C++习题整理1.1_第1页
C++习题整理1.1_第2页
C++习题整理1.1_第3页
C++习题整理1.1_第4页
C++习题整理1.1_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一,My Vector#include <iostream>#include <iomanip>#include <vector>using namespace std;void DisplayVector(vector<int> A);void main()vector<int> a;int i;for(i=0;i<10;i+)/a.push_back(i+1)*10);ai = (i+1)*10;cout<<"向ò量?当獭?前°的?元a素?为a:"<<endl;

2、DisplayVector(a);cout<<"向ò量?当獭?前°的?长¤度è为a:"<<a.size()<<endl;cout<<"向ò量?当獭?前°的?容量?为a:"<<a.capacity()<<endl;vector<int>:iterator p=a.begin()+2;a.erase(p);cout<<"元a素?删?除y操ù作痢?完?成é后ó的?向&

3、#242;量?为a:"<<endl;DisplayVector(a);cout<<"向ò量?当獭?前°的?长¤度è为a:"<<a.size()<<endl;cout<<"向ò量?当獭?前°的?容量?为a:"<<a.capacity()<<endl;p=a.begin()+2;a.insert(p,20,3);cout<<"元a素?插?入?操ù作痢?完?成é后&#

4、243;的?向ò量?为a:"<<endl;DisplayVector(a);cout<<"向ò量?当獭?前°的?长¤度è为a:"<<a.size()<<endl;cout<<"向ò量?当獭?前°的?容量?为a:"<<a.capacity()<<endl;void DisplayVector(vector<int> A)int i;for(i=0;i<A.size();i+)c

5、out<<setw(5)<<left<<Ai;if (i+1)%5 = 0)cout<<endl;cout<<endl;二输出格式#include <iomanip>using namespace std;void main()cout<<hex<<10<<" "<<15<<'n'cout<<dec;cout <<noshowpos<<12<<' '<<

6、155<<' '<<showpos<<18<<"n"cout <<121<<' '<<156<<endl;cout <<noshowpos;/宽í度è填?充?cout<<setw(10)<<setfill('$');cout<<23<<56<<789<<endl;cout<<setw(7);cout<<56

7、<<789<<endl;cout.width(10);cout.fill('S');cout<<23.01<<23<<56<<endl;double d1=123.0, d2=1.2345;cout<<setprecision(5)<<d1<<endl;cout<<showpoint<<setprecision(5)<<d1<<endl;cout<<showpoint<<setprecision(2)

8、<<d1<<endl;cout<<noshowpoint<<setprecision(2)<<d1<<endl;cout<<setprecision(5)<<d2<<endl;cout<<setprecision(3)<<d2<<endl;cout<<fixed<<setprecision(3)<<d2<<endl;cout<<fixed<<setprecision(7)<&

9、lt;d2<<endl;cout<<scientific<<setprecision(3)<<d2<<endl;cout<<scientific<<setprecision(7)<<d2<<endl;三文件#include <fstream>#include <iostream>#include <iomanip>using namespace std;void main()int i,temp;ifstream fin("abc.txt&q

10、uot;);ofstream fout("123.dat", ios:binary);if(fin != NULL && fout != NULL)fin>>temp;while(fin != NULL)fout.write(char *) &temp,sizeof(int);fin>>temp;elseif(fin = NULL)cout<<"Error:cannot open file 'abc.txt' "<<endl;if(fout = NULL)cout&l

11、t;<"Error:cannot open file '123.dat' "<<endl;return;fin.close();fout.close();ifstream fin1("123.dat",ios:binary);if(fin1 != NULL)i=0;fin1.read( (char *) &temp, sizeof(int);while (fin1 != NULL)cout<<setw(8)<<left<<temp;i+;if( i%10 = 0)cout<

12、;<endl;fin1.read( (char *) &temp, sizeof(int);if( i%10 != 0)cout<<endl;elsecout<<"Error:cannot open file '123.dat' "<<endl;return;fin1.close();四考试#include<iostream>#include<fstream>#include<sstream>#include<vector>#include<iomanip

13、>#include<algorithm>#include<string>using namespace std;typedef structint ID; /工¤号?string name; /姓?名?int WorkerYears; /工¤龄?float Salary; /工¤资哩?WORKER;void read(WORKER a,vector<WORKER>&A)ifstream in("d:input.txt");for(int i=0;i<7;i+)in>>a.ID;

14、in>>;in>>a.WorkerYears;in>>a.Salary;A.push_back(a);void Sort(vector<WORKER>&Arr)int i,j; WORKER t;for(i=0;i<Arr.size()-1;i+)for(j=0;j<Arr.size()-1-i;j+)if(A>Arrj+1.name)t=Arrj;Arrj=Arrj+1;Arrj+1=t;void display(vector<WORKER>&A)int i;cout&l

15、t;<setw(10)<<left<<"工¤号?"<<10)<<"姓?名?"<<setw(5)<<"工¤龄?"<<setprecision(1)<<"工¤资哩?<<endl;for(i=0;i<A.size();i+)cout<<setw(10)<<left<<Ai.ID<<setw(10)<<A<&

16、lt;setw(5)<<Ai.WorkerYears<<setprecision(1)<<Ai.Salary<<endl;void Filter(vector<WORKER>B,vector<WORKER>A)int i;for(i=0;i<A.size();i+)if(Ai.WorkerYears>=10)B.push_back(Ai);cout<<setw(10)<<left<<"工¤号?"<<setw(10)<<&q

17、uot;姓?名?"<<setw(5)<<"工¤龄?"<<setprecision(1)<<"工¤资哩?<<endl;for(i=0;i<B.size();i+)cout<<setw(10)<<left<<Bi.ID<<setw(10)<<B<<setw(5)<<Bi.WorkerYears<<setprecision(1)<<Bi.Salary<

18、<endl;void Filter(vector<WORKER>C,vector<WORKER>A,int i)if(Ai.Salary>=1500.0)C.push_back(Ai);cout<<setw(10)<<left<<"工¤号?"<<setw(10)<<"姓?名?"<<setw(5)<<"工¤龄?"<<setprecision(1)<<"工¤

19、资哩?<<endl;for(i=0;i<C.size();i+)cout<<setw(10)<<left<<Ci.ID<<setw(10)<<C<<setw(5)<<Ci.WorkerYears<<setprecision(1)<<Ci.Salary<<endl;int main()vector<WORKER>A;vector<WORKER>B;vector<WORKER>C;WORKER a;int i=0;

20、read(a,A);Sort(A);display(A);Filter(B,A);Filter(C,A,i);return 0;五重载#include <iostream>#include <string>using namespace std;int result;int fun1(int i)result = i*i;return result;int& fun2(int i)int result;result = i*i;return result;int main()int r1 = fun1(10);/int &r2 = fun1(10);in

21、t r3 = fun2(10);int &r4 = fun2(10);cout<<"r1="<<r1<<endl;/cout<<"r2="<<r2<<endl;cout<<"r3="<<r3<<endl;r4 = 10;cout<<"r4="<<r4<<endl; cout<<"result="<<result<&l

22、t;endl;result = 201;cout<<"result="<<result<<endl;cout<<"r4="<<r4<<endl; return 0;六类#include <iostream>#include <string>using namespace std;class CSerialPortprivate:string Name;int Speed;int BufferLength;static int ComCounts;public:

23、CSerialPort(string name="com1",int speed=9600,int bufferlength=500);CSerialPort(const CSerialPort& cserialport);static int GetComCounts();friend CSerialPort& operator+(CSerialPort& com);friend CSerialPort operator+(CSerialPort& com,int);friend ostream& operator<<(

24、ostream& o,const CSerialPort& com);CSerialPort();CSerialPort:CSerialPort(string name,int speed,int bufferlength)Name=name;Speed=speed;BufferLength=bufferlength;ComCounts+;CSerialPort:CSerialPort(const CSerialPort& cserialport)Name=cserialport.Name;Speed=cserialport.Speed;BufferLength=cse

25、rialport.BufferLength;ComCounts+;int CSerialPort:GetComCounts()return ComCounts;CSerialPort& operator+(CSerialPort& com)com.Speed+;return com;CSerialPort operator+(CSerialPort& com,int)CSerialPort a(com);com.Speed+;return a;ostream& operator<<(ostream& o,const CSerialPort&a

26、mp; com)o<<"串?口ú名?称?:阰"<<com.Name<<endl;o<<"串?口ú通?信?速ù率ê:阰"<<com.Speed<<endl;return o;CSerialPort:CSerialPort()ComCounts-;int CSerialPort:ComCounts = 0;int main()CSerialPort portA;cout<<"串?口úportA为a: n"&

27、lt;<portA;cout<<"当獭?前°创洹?建¨的?串?口ú个?数簓为a: "<<CSerialPort:GetComCounts()<<"n"<<endl;CSerialPort portB("com5",4800, 1024);cout<<"串?口úportB为a: n"<<portB;cout<<"当獭?前°创洹?建¨的?串?口ú个?数

28、簓为a: "<<CSerialPort:GetComCounts()<<"n"<<endl;+(+portB); / 连?续?前°自?增?操ù作痢?cout<<"两?次?前°自?增?后ó,?串?口úportB为a: n"<<portB;cout<<"当獭?前°创洹?建¨的?串?口ú个?数簓为a: "<<CSerialPort:GetComCounts()<&

29、lt;"n"<<endl;cout<<"一?次?后ó自?增?后ó,?串?口úportB为a: n"<<portB+;cout<<"一?次?后ó自?增?后ó,?串?口úportB为a: n"<<portB;cout<<"当獭?前°创洹?建¨的?串?口ú个?数簓为a: "<<CSerialPort:GetComCounts()<<&qu

30、ot;n"<<endl;CSerialPort *ptr_portC = new CSerialPort;cout<<"串?口úportC为a:n"<<*ptr_portC;cout<<"当獭?前°创洹?建¨的?串?口ú个?数簓为a: "<<CSerialPort:GetComCounts()<<"n"<<endl;delete ptr_portC;cout<<"删?除y串?口&#

31、250;portC后ó,?当獭?前°创洹?建¨的?串?口ú个?数簓为a: "<<CSerialPort:GetComCounts()<<"n"<<endl;return 0;七、习题4#include<algorithm>#include<iostream>#include<fstream>#include<string>#include<cmath>#include<iomanip>#include<vecto

32、r>#include<deque>#include<functional>#include<iomanip>using namespace std;struct Student int ID; / 学§号?string name; / 姓?名?float score3; /三门?课?程ì成é绩¨ void sort(vector<struct Student> &a)struct Student temp;int min;for (unsigned int i=0;i<a.size();

33、i+)min=i;for (unsigned int j=i;j<a.size();j+)if (aj.ID<ai.ID)min=j;if (min!=i)temp=ai;ai=amin;amin=temp;cout<<"排?序ò后ó的?学§生?信?息为a:阰"<<endl;for (unsigned int i=0;i<a.size();i+)cout<<setw(10)<<right<<ai.ID<<" "<<setw(

34、10)<<right<<<<" "<<setprecision(3)<<right<<ai.score0<<" "<<setprecision(3)<<right<<ai.score1<<" "<<setprecision(3)<<right<<ai.score2<<endl;return;void Delete(vector<struc

35、t Student> &a)ofstream out("res.dat",ios:binary);for (unsigned int i=0;i<a.size();i+)if(="Tom")a.erase(a.begin()+i);for (unsigned int i=0;i<a.size();i+)out.write(char*)&ai,sizeof(struct Student);out.close();return;int main()struct Student arr5;vector<st

36、ruct Student> a;for (int i=0;i<5;i+)cout<<"输?入?学§生?信?息:阰"<<endl;cin>>arri.ID>>>>arri.score0>>arri.score1>>arri.score2;for (unsigned int i=0;i<5;i+)a.push_back(arri);sort(a);Delete(a);return 0;八习题3#include<iostream>#incl

37、ude<string>#include<iomanip>#include<vector>#include<time.h>#include<functional>#include<algorithm>using namespace std;int main()vector<string> a;a.push_back("Jua");a.push_back("Feb");a.push_back("Mar");a.push_back("Apr&quo

38、t;);a.push_back("May");a.push_back("Jun");a.push_back("Jul");a.push_back("Aug");a.push_back("Sep");a.push_back("Oct");a.push_back("Nov");a.push_back("Dec");sort(a.begin(),a.end(),less<string>(); for ( unsigned int

39、i = 0; i < a.size(); i+ ) cout << ai << endl; return 0;9 习题2#include <iostream>#include <fstream>#include<iomanip>using namespace std;int main()ifstream in1("Data.txt");ifstream in2("Res.dat",ios:binary);ofstream out1("Res.dat",ios:binary);ofstream out2("Res.txt");int temp1,count=0;while(in1>>temp1)count+;out1.write(char*)&temp1,sizeof(int);in2.read(char*)&temp1,sizeof(int);out2<<setw(10)<<setfill('C')<<right<<temp1;if (count%2=0)out2<&

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论