每日打卡一小时(第二十七天)

一.问题描述

定义一个空的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;
}

二.设计思路

注意向量容器的使用方法,注意迭代器的定义方法,注意使用的函数是否被容器所支持

三.代码实现

#include<iostream>
#include<list>
#include<algorithm>
using namespace std;
int main() {
    int i, a[10], b;
    for (i = 0; i < 10; i++) {
        scanf("%d", &a[i]);
    }
    scanf("%d", &b);//插入的数
    {
        vector<int> vec(a,a+10);
        vector<int>::iterator it;
        it = vec.begin();
        vec.insert(it, b);
        for (it = vec.begin(); it != vec.end(); it++) {
            cout << "[" << *it << "]" ;
        }
        cout<<endl;
        sort(vec.begin(), vec.end());
        vec.pop_back();
        for (it = vec.begin(); it != vec.end(); it++) {
            cout << "[" << *it << "]" ;
        }
        vec.clear();
    }
    return 0;
}

 

posted @ 2023-05-18 19:24  伐木工熊大  阅读(13)  评论(0编辑  收藏  举报