程序设计艺术与方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序设计艺术与方法
实验一STL 的熟悉与使用
1.实验目的(1)掌握C++中STL 的容器类的使用。(2)掌握C++中STL 的算法类的使用。
2.试验设备硬件环境:PC 计算机软件环境:操作系统:Windows 2000 / Windows XP / Linux 语言环境:Dev cpp / gnu c++
3.试验内容(1) 练习vector 和list 的使用。定义一个空的vector,元素类型为int,生成10 个随机数插入到vector 中,用迭代器遍历vector 并输出其中的元素值。在vector 头部插入一个随机数,用迭代器遍历vector 并输出其中的元素值。用泛型算法find 查找某个随机数,如果找到便输出,否则将此数插入vector 尾部。用泛型算法sort 将vector 排序,用迭代器遍历vector 并输出其中的元素值。删除vector 尾部的元素,用迭代器遍历vector 并输出其中的元素值。将vector 清空。定义一个list,并重复上述实验,并注意观察结果。(2) 练习泛型算法的使用。
- 149
定义一个vector,元素类型为int,插入10 个随机数,使用sort 按升序排序,输出每个元素的值,再按降叙排序,输出每个元素的值。练习用find 查找元素。用min 和max 找出容器中的小元素个大元素,并输出。
源代码:
#include
#include
#include
#include
#include
using namespace std;
vector
bool sortup(int v1,int v2)
{
return v1 } int main(int argc, char *argv[]) { srand(time(NULL)); for (int i=0;i<10;i++) myV.push_back(rand()); sort(myV.begin(),myV.end(),sortup); vector for (it1=myV.begin();it1!=myV.end();it1++) { cout<<(*it1)< } cout< int min=myV[0]; for (it1=myV.begin()+1;it1!=myV.end();it1++) if((*it1) cout<<"最小元素为" < int max=myV[0]; for (it1=myV.begin();it1!=myV.end();it1++) if((*it1)>max)max=(*it1); cout<<"最大元素为" < cout< int value=rand(); it1=find(myV.begin(),myV.end(),value); if((*it1)==value) cout<<"找到了这个随机数"< else cout<<"没有找到这个随机数"< myV.insert(myV.end(),value); cout<<"插入尾部的随机数为"< { cout<<(*it1)< } cout<<"\n"< int t=rand(); myV.insert(myV.begin(),t); cout<<"插入头部的随机数为" < for (it1=myV.begin();it1!=myV.end();it1++) { cout<<(*it1)< } cout< myV.pop_back (); for (it1=myV.begin();it1!=myV.end();it1++) { cout<<(*it1)< } cout< myV.clear(); if(myV.empty()) { cout << "It's empty!" << endl; } system("PAUSE"); return 0; } 运行截图: 2 练习泛型算法的使用: 源代码: #include #include //#inclued using namespace std; typedef list int value[]={1,2,3,4,5}; void print(lin &l) { int i; lin::iterator lit; for(lit=l.begin();lit!=l.end();lit++) cout<<(*lit)<<" "; cout< } bool sortsp(int v1,int v2) { return v1>v2; } int main(){