每日打卡一小时(第二十八天)
一.问题描述
定义一个空的list,将用户输入的数组a[10]的10个数插入到list中,在list头部插入数b,用迭代器遍历list并输出其中的元素值。然后将list从大到小排序,删除list尾部的元素,用迭代器遍历list并输出其中的元素值。最后将list清空。
二.设计思路
注意列表容器的使用方法,注意迭代器的定义方法,注意使用的函数是否被容器所支持
三.代码实现
#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);//插入的数 { list<int> niu(a, a + 10); niu.push_front(b); list<int>::iterator it; for (it = niu.begin(); it != niu.end(); it++) cout << "[" << *it << "]"; cout << endl; niu.sort( greater<int>()); niu.pop_back(); for (it = niu.begin(); it != niu.end(); it++) cout << "[" << *it << "]"; } return 0; }