C++习题整理11.docx

上传人:b****6 文档编号:7873927 上传时间:2023-01-26 格式:DOCX 页数:20 大小:18.76KB
下载 相关 举报
C++习题整理11.docx_第1页
第1页 / 共20页
C++习题整理11.docx_第2页
第2页 / 共20页
C++习题整理11.docx_第3页
第3页 / 共20页
C++习题整理11.docx_第4页
第4页 / 共20页
C++习题整理11.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

C++习题整理11.docx

《C++习题整理11.docx》由会员分享,可在线阅读,更多相关《C++习题整理11.docx(20页珍藏版)》请在冰豆网上搜索。

C++习题整理11.docx

C++习题整理11

一,MyVector

#include

#include

#include

usingnamespacestd;

voidDisplayVector(vectorA);

voidmain()

{

vectora;

inti;

for(i=0;i<10;i++)

{

//a.push_back((i+1)*10);

a[i]=(i+1)*10;

}

cout<<"向ò量?

当獭?

前°的?

元a素?

为a:

"<

DisplayVector(a);

cout<<"向ò量?

当獭?

前°的?

长¤度è为a:

"<

cout<<"向ò量?

当獭?

前°的?

容╕量?

为a:

"<

vector:

:

iteratorp=a.begin()+2;

a.erase(p);

cout<<"元a素?

删?

除y操ù作痢?

完?

成é后ó的?

向ò量?

为a:

"<

DisplayVector(a);

cout<<"向ò量?

当獭?

前°的?

长¤度è为a:

"<

cout<<"向ò量?

当獭?

前°的?

容╕量?

为a:

"<

p=a.begin()+2;

a.insert(p,20,3);

cout<<"元a素?

插?

入?

操ù作痢?

完?

成é后ó的?

向ò量?

为a:

"<

DisplayVector(a);

cout<<"向ò量?

当獭?

前°的?

长¤度è为a:

"<

cout<<"向ò量?

当獭?

前°的?

容╕量?

为a:

"<

}

voidDisplayVector(vectorA)

{

inti;

for(i=0;i

{

cout<

if((i+1)%5==0)

{

cout<

}

}

cout<

}

二.输出格式

#include

usingnamespacestd;

voidmain()

{

cout<

cout<

cout<

cout<<121<<''<<156<

cout<

//宽í度è填?

充?

cout<

cout<<23<<56<<789<

cout<

cout<<56<<789<

cout.width(10);

cout.fill('S');

cout<<23.01<<23<<56<

doubled1=123.0,d2=1.2345;

cout<

cout<

cout<

(2)<

cout<

(2)<

cout<

cout<

cout<

cout<

cout<

cout<

}

三.文件

#include

#include

#include

usingnamespacestd;

voidmain()

{

inti,temp;

ifstreamfin("abc.txt");

ofstreamfout("123.dat",ios:

:

binary);

if(fin!

=NULL&&fout!

=NULL)

{

fin>>temp;

while(fin!

=NULL)

{

fout.write((char*)&temp,sizeof(int));

fin>>temp;

}

}

else

{

if(fin==NULL)

cout<<"Error:

cannotopenfile'abc.txt'"<

if(fout==NULL)

cout<<"Error:

cannotopenfile'123.dat'"<

return;

}

fin.close();

fout.close();

ifstreamfin1("123.dat",ios:

:

binary);

if(fin1!

=NULL)

{

i=0;

fin1.read((char*)&temp,sizeof(int));

while(fin1!

=NULL)

{

cout<

i++;

if(i%10==0)

cout<

fin1.read((char*)&temp,sizeof(int));

}

if(i%10!

=0)

cout<

}

else

{

cout<<"Error:

cannotopenfile'123.dat'"<

return;

}

fin1.close();

}

四.考试

#include

#include

#include

#include

#include

#include

#include

usingnamespacestd;

typedefstruct

{

intID;//工¤号?

stringname;//姓?

名?

intWorkerYears;//工¤龄?

floatSalary;//工¤资哩?

}WORKER;

voidread(WORKERa,vector&A)

{

ifstreamin("d:

\\input.txt");

for(inti=0;i<7;i++)

{

in>>a.ID;

in>>a.name;

in>>a.WorkerYears;

in>>a.Salary;

A.push_back(a);

}

}

voidSort(vector&Arr)

{

inti,j;

WORKERt;

for(i=0;i

{

for(j=0;j

{

if(Arr[j].name>Arr[j+1].name)

{

t=Arr[j];

Arr[j]=Arr[j+1];

Arr[j+1]=t;

}

}

}

}

voiddisplay(vector&A)

{

inti;

cout<

"<<10)<<"姓?

名?

"<

"<

(1)<<"工¤资哩?

<

for(i=0;i

{

cout<

(1)<

}

}

voidFilter(vectorB,vectorA)

{

inti;

for(i=0;i

{

if(A[i].WorkerYears>=10)

{

B.push_back(A[i]);

}

}

cout<

"<

名?

"<

"<

(1)<<"工¤资哩?

<

for(i=0;i

{

cout<

(1)<

}

}

voidFilter(vectorC,vectorA,inti)

{

if(A[i].Salary>=1500.0)

{

C.push_back(A[i]);

}

cout<

"<

名?

"<

"<

(1)<<"工¤资哩?

<

for(i=0;i

{

cout<

(1)<

}

}

intmain()

{

vectorA;

vectorB;

vectorC;

WORKERa;

inti=0;

read(a,A);

Sort(A);

display(A);

Filter(B,A);

Filter(C,A,i);

return0;

}

五.重载

#include

#include

usingnamespacestd;

intresult;

intfun1(inti)

{

result=i*i;

returnresult;

}

int&fun2(inti)

{

intresult;

result=i*i;

returnresult;}

intmain()

{

intr1=fun1(10);

//int&r2=fun1(10);

intr3=fun2(10);

int&r4=fun2(10);

cout<<"r1="<

//cout<<"r2="<

cout<<"r3="<

r4=10;

cout<<"r4="<

cout<<"result="<

result=201;

cout<<"result="<

cout<<"r4="<

return0;

}

六.类

#include

#include

usingnamespacestd;

classCSerialPort

{

private:

stringName;

intSpeed;

intBufferLength;

staticintComCounts;

public:

CSerialPort(stringname="com1",intspeed=9600,intbufferlength=500);

CSerialPort(constCSerialPort&cserialport);

staticintGetComCounts();

friendCSerialPort&operator++(CSerialPort&com);

friendCSerialPortoperator++(CSerialPort&com,int);

friendostream&operator<<(ostream&o,constCSerialPort&com);

~CSerialPort();

};

CSerialPort:

:

CSerialPort(stringname,intspeed,intbufferlength)

{

Name=name;

Speed=speed;

BufferLength=bufferlength;

ComCounts++;

}

CSerialPort:

:

CSerialPort(constCSerialPort&cserialport)

{

Name=cserialport.Name;

Speed=cserialport.Speed;

BufferLength=cserialport.BufferLength;

ComCounts++;

}

intCSerialPort:

:

GetComCounts()

{

returnComCounts;

}

CSerialPort&operator++(CSerialPort&com)

{

com.Speed++;

returncom;

}

CSerialPortoperator++(CSerialPort&com,int)

{

CSerialPorta(com);

com.Speed++;

returna;

}

ostream&operator<<(ostream&o,constCSerialPort&com)

{

o<<"串?

口ú名?

称?

阰"<

o<<"串?

口ú通?

信?

速ù率ê:

阰"<

returno;

}

CSerialPort:

:

~CSerialPort()

{

ComCounts--;

}

intCSerialPort:

:

ComCounts=0;

intmain()

{

CSerialPortportA;

cout<<"串?

口úportA为a:

\n"<

cout<<"当獭?

前°创洹?

建¨的?

串?

口ú个?

数簓为a:

"<

:

GetComCounts()<<"\n"<

CSerialPortportB("com5",4800,1024);

cout<<"串?

口úportB为a:

\n"<

cout<<"当獭?

前°创洹?

建¨的?

串?

口ú个?

数簓为a:

"<

:

GetComCounts()<<"\n"<

++(++portB);//连?

续?

前°自?

增?

操ù作痢?

cout<<"两?

次?

前°自?

增?

后ó,?

串?

口úportB为a:

\n"<

cout<<"当獭?

前°创洹?

建¨的?

串?

口ú个?

数簓为a:

"<

:

GetComCounts()<<"\n"<

cout<<"一?

次?

后ó自?

增?

后ó,?

串?

口úportB为a:

\n"<

cout<<"一?

次?

后ó自?

增?

后ó,?

串?

口úportB为a:

\n"<

cout<<"当獭?

前°创洹?

建¨的?

串?

口ú个?

数簓为a:

"<

:

GetComCounts()<<"\n"<

CSerialPort*ptr_portC=newCSerialPort;

cout<<"串?

口úportC为a:

\n"<<*ptr_portC;

cout<<"当獭?

前°创洹?

建¨的?

串?

口ú个?

数簓为a:

"<

:

GetComCounts()<<"\n"<

deleteptr_portC;

cout<<"删?

除y串?

口úportC后ó,?

当獭?

前°创洹?

建¨的?

串?

口ú个?

数簓为a:

"<

:

GetComCounts()<<"\n"<

return0;

}

七、习题4

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

usingnamespacestd;

structStudent

{

intID;//学§号?

stringname;//姓?

名?

floatscore[3];//三▂门?

课?

程ì成é绩¨

};

voidsort(vector&a)

{

structStudenttemp;

intmin;

for(unsignedinti=0;i

{

min=i;

for(unsignedintj=i;j

{

if(a[j].ID

{

min=j;

}

}

if(min!

=i)

{

temp=a[i];

a[i]=a[min];

a[min]=temp;

}

}

cout<<"排?

序ò后ó的?

学§生Θ?

信?

息¢为a:

阰"<

for(unsignedinti=0;i

{

cout<

}

return;

}

voidDelete(vector&a)

{

ofstreamout("res.dat",ios:

:

binary);

for(unsignedinti=0;i

{

if(a[i].name=="Tom")

{

a.erase(a.begin()+i);

}

}

for(unsignedinti=0;i

{

out.write((char*)&a[i],sizeof(structStudent));

}

out.close();

return;

}

intmain()

{

structStudentarr[5];

vectora;

for(inti=0;i<5;i++)

{

cout<<"输?

入?

学§生Θ?

信?

息¢:

阰"<

cin>>arr[i].ID>>arr[i].name>>arr[i].score[0]>>arr[i].score[1]>>arr[i].score[2];

}

for(unsignedinti=0;i<5;i++)

{

a.push_back(arr[i]);

}

sort(a);

Delete(a);

return0;

}

八.习题3

#include

#include

#include

#include

#include

#include

#include

usingnamespacestd;

intmain()

{

vectora;

a.push_back("Jua");

a.push_back("Feb");

a.push_back("Mar");

a.push_back("Apr");

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());

for(unsignedinti=0;i

{

cout<

}

return0;

}

9.习题2

#include

#include

#include

usingnamespacestd;

intmain()

{

ifstreamin1("Data.txt");

ifstreamin2("Res.dat",ios:

:

binary);

ofstreamout1("Res.dat",i

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 互联网

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1