关闭

第十四周实践项目-阅读并运行程序,解释程序执行得到的结果(3)

199人阅读 评论(0) 收藏 举报

问题及代码:

/*
 *Copyright(c)2016,烟台大学计算机与控制工程学院
 *All right reserved.
 *文件名称:77.cpp
 *作    者:董凯琦
 *完成日期:2016年6月1日
 *版 本 号:v1.0
 *
 *问题描述:
阅读并运行程序,解释程序执行得到的结果
 *输入描述:
 *程序输出:
 */


#include <iterator>
#include <list>
#include <algorithm>
#include <iostream>
using namespace std;
int main()
{
   int ia[5]={1,2,3,4};
   list<int> id(ia,ia+4);
   ostream_iterator<int>outite(cout," ");
   copy(id.begin(),id.end(),outite);
   cout<<endl;
   copy(ia+1,ia+2,front_inserter(id));
   copy(id.begin(),id.end(),outite);
   cout<<endl;
   copy(ia+3,ia+4,back_inserter(id));
   copy(id.begin(),id.end(),outite);
   cout<<endl;
   list<int>::iterator ite=find(id.begin(),id.end(),3);
   copy(ia+0,ia+2,inserter(id,ite));
   copy(id.begin(),id.end(),outite);
   cout<<endl;
   copy(id.rbegin(),id.rend(),outite);
   cout<<endl;
   return 0;

}

运行结果:

程序分析:

1、 int ia[5]={1,2,3,4};
   list<int> id(ia,ia+4);
   ostream_iterator<int>outite(cout," ");
   copy(id.begin(),id.end(),outite);

利用输出迭代器将数组中的数字依次输出;

2、通过 copy(ia+1,ia+2,front_inserter(id));将第二个数组复制到第一个数字的前面。输出第二行结果

3、同样的道理,输出第三行结果。

4、找到3,将第一个数字和第二个数字复制到3的前面。得到第四行结果。

5、将最终的结果逆序输出。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:31117次
    • 积分:1589
    • 等级:
    • 排名:千里之外
    • 原创:135篇
    • 转载:0篇
    • 译文:0篇
    • 评论:2条
    最新评论