vector应用测试C++PTA

应用STL中的vector完成功能测试
要求:定义一个空的vector,将用户输入的数组a[10]的10个数插入到vector中,在vector头部插入数b,用迭代器遍历vector并输出其中的元素值。然后将vector从小到大排序,删除vector尾部的元素,用迭代器遍历vector并输出其中的元素值。最后将vector清空。
测试样例:

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(void)
{
    int i,a[10],b;
    for(i=0; i<10; i++){
        scanf("%d",&a[i]);
    }
    scanf("%d",&b);//插入的数
    {

/*请在这里填写答案*/

    }
    return 0;
}

输入样例
9 8 7 6 5 4 3 2 1 10
0
输出样例
[0][9][8][7][6][5][4][3][2][1][10]
[0][1][2][3][4][5][6][7][8][9]

基于Monster 组和GPT的调写:


#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;

int main() {
vector<int> vec; // 定义空的vector
int i, a[10], b;
for (i = 0; i < 10; i++) {
    cin >> a[i];
    vec.push_back(a[i]); // 将数组元素插入到vector中
}

cin >> b;
vec.insert(vec.begin(), b); // 在vector头部插入数b

// 用迭代器遍历并输出vector的元素值
for (auto it = vec.begin(); it != vec.end(); ++it) {
    cout << "[" << *it << "]";
}
cout << endl;

// 对vector进行排序
sort(vec.begin(), vec.end());

// 删除vector尾部的元素
vec.pop_back();

// 再次用迭代器遍历并输出vector的元素值
for (auto it = vec.begin(); it != vec.end(); ++it) {
    cout << "[" << *it << "]";
}
cout << endl;

vec.clear(); // 清空vector

return 0;
}

img

谢谢你的答案。没想到这么快就回复了,注意休息呀