山东广播电视大学开放教育《C++语言程序设计》课程综合练习题

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1山东广播电视大学开放教育《C++语言程序设计》课程综合练习题一.选择题1.下面的哪一个保留字不能作为函数的返回类型?(C)A.voidB.intC.newD.long2.假定a为一个数组名,则下面的哪一种表示有错误?(了B)A.a[i]B.*++aC.*aD.*(a+1)3.在下面的二维数组定义中,哪一个是正确的?(D)A.inta[5][];B.inta[](10);C.inta[][];D.inta[][5]={{1,2,3},{4,5}};4.下面的哪一个函数头格式不正确?(B)A.AA(inta,intb)B.AA(inta=0,intb)C.AA(inta=0,intb=0)D.AA(inta,intb=0)5.假定要对类AB定义加号操作符重载成员函数,实现两个AB类对象的加法,并返回相加结果,则该成员函数的声明语句为(B)。A.ABoperator+(AB&a,AB&b);B.ABoperator+(AB&a);C.operator+(ABa);D.AB&operator+();6.当需要使用ostrstream流类定义一个流对象并联系一个字符串时,应在文件开始使用#include命令,使之包含(A)文件。A.strstrea.hB.stdlib.hC.iostream.hD.fstream.h7.下列变量名中,(A)是合法的。ACHINABbyte-sizeCdoubleDA+a8.下列各种函数中,(C)不是类的成员函数。A构造函数B析构函数C友元函数D拷贝构造函数9.下列(A)是正确的语句。A;Ba=17Cx+yDcout\n10.循环while(inti=0)i--;执行次数是(A)。A0B1C5D无限11.设intf(int);和intg(int);是函数f和g的原形,以下将f作为语句调用的是(B)。Ag(f(3));Bf(g(3));Cg(f(3)+2);Dp=f(g(3)+1);12.设int*p2=&x,*p1=a;p2=*b;则a和b的类型分别是(B)。Aint*和intBint*和int**Cint和int*Dint*和int*13.设intx;,则经过(C)后,语句*px=0;可将x值置为0。Aint*px;Bintconst*px=&x;Cint*constpx=&x;Dconstint*px=&x;214.设voidf1(int*m,long&n);inta;longb;则以下调用合法的是(B)。Af1(a,b);Bf1(&a,b);Cf1(a,&b);Df1(&a,&b);15.以下结构类型可用来构造链表的是(B)。Astructaa{inta;int*b;};Bstructbb{inta;bb*b;};Cstructcc{int*a;ccb;};Dstructdd{int*a;aab;};16.使用操作符setw对数据进行格式输出时,需要包含(C)文件。Aiostream.hBfstream.hCiomanip.hDstdlib.h17.类型修饰符unsigned修饰(D)类型是错误的。AcharBintClongintDfloat18.下列变量名中,(A)是合法的。A_varBbye-byeCintD123_cc19.设inta=3,*p=&a;,则*p的值是(D)。A变量a的地址值B无意义C变量p的地址值D320.设intm=0;,下列表示引用的方法中,(A)是正确的。Aint&x=m;Bint&y=10;Cint&z;Dfloat&t=&m21.循环for(inti=0,x=0;!x&&i=5;i++);的循环体执行次数是(B)。A5B6C1D无限22.磁盘文件操作时,在打开磁盘文件的访问方式中,(C)是以追加数据方式打开文件的。AinBoutCappDate23.类X中,若没有定义构造函数,则默认的构造函数是(A)。AX(){}BX(X&x){*this=x;}C~X(){}D不存在24.int*p2=&x,*p1=a;*p2=*b;则变量a和b的类型分别是(D)。Aint和intBint*和intCint和int*Dint*和int*25.设p为指针变量,则以下表达式正确的是(B)。A--p++B--++pC--(p+5)D(p-5)++26..设voidf1(int&x,char*p);intm;chars[]=c++;以下调用合法的是(C)。Af1(&m,&s);Bf1(&m,s);Cf1(m,s);Df1(m,&s);27.求一个字符串长度的标准函数为(A)。A.strlen()B.dtrcap()C.Strcat()D.strcmp()28.假定AB为一个类,则执行“ABa(4),b[5],*p[2]:”语句时,自动调用该类构造函数的次数为(A)。A.6B.7C.9D.1129.设inta=3,*p=&a;,则*p的值是(D)。A.变量a的地址值B.无意义C.变量p的地址值D.3330.使用操作符setw对数据进行格式输出时,需要包含(C)文件。A.iostream.hB.fstream.hC.iomanip.hD.stdlib.h二.填空题1.在c++语言中,用输出控制字符________表示输出一个换行。2.表达式x=x+l表示成增量表达式为____________________。3.关系表达式x+y5的相反表达式为______________。4.假定x=5,则执行“a=(x0?10:20);”语句后a的值为________。5.假定一个二维数组的定义为“inta[3][6];”,则该数组所含元素的个数为________.6.要在屏幕上显示Hello,world!应执行语句cout____________________。7.表达式8&3的结果是__________。8.若一全局变量只允许本程序文件中的函数使用,则定义它时应加上修饰符_______________。9.假定p所指对象的值为36,p+l所指对象的值为49,则*++p的值为——10.假定AB为一个类,则执行ABa[8];”语句时,系统自动调用该类构造函数的次数为————。11.已知’A’一’Z’的ASCII码为65—90,当执行charch=14*5+2;coutchendl;”语句序列后,得到的输出结果为——。12.float和double类型的长度分别为——和——。13.假定一个二维数组的定义为“inta[3][6];”,则该数组所含元素的个数为——,所占存储空间的字节数为——·14.执行“typedefintABC[20];”语句把ABC定义为具有20个整型元素的———.15.假定p所指对象的值为36,p+l所指对象的值为49,则*++p的值为——16.假定a是一个二维数组,则a[i][i]的指针访问方式为——。17.假定要访问一个结构对象x中的由a指针成员所指向的对象,则表示方法为———。18.对一个类中的数据成员的初始化可以通过构造函数中的——实现,也可以通过构造函数中的——实现。19.当一个类对象离开它的作用域时,系统将自动调用该类的——。20.假定AB为一个类,则执行ABa[8];”语句时,系统自动调用该类构造函数的次数为————。答案:1.’\n’2.++x3.x+y=54.205.186.\Hello,world!\7.08.static9.4910.811.H12.4813.187214.数组类型15.4916.*,(a[i]+”或*(*(a+i)十j)17.*(x.a)18.初始化表函数体19.析构函数20.84三.写出下列每一个程序运行后的结果。1.#includeiostream.hvoidmain(){ints1=0,s2=0;for(inti=0;i15;i++)if(i%2)s1+=i;elses2+=i;couts1','s2endl;}2.#includeiostream.hvoidmain(){inti=1,s=0;while(s15)s+=i++;couti’,’sednl;}3.#includeiostream.hvoidmain(){inta[10]={8,19,46,15,6,24,27,18,20,53};intc1=0,c2=0;for(inti=0;i10;i++){if(a[i]=20)c1++;if(a[i]=10&&a[i]=40)c2++;}coutc1','c2endl;}4.#includeiostream.hIntLB(int*a,intn)5For(inti=0;in;i++){p*=*a;a++;}Returnp;Inta[5]={1,2,3,4,3};CoutLB(a,5)endl;}5.#includeiostream.hstructWorker{charname[15];//姓名intage;//年龄floatpay;//工资};voidmain(){Workerx={wangfong,46,1640};Workery,*p;y=x;p=&x;coup-age+5’’p-pay-300endl;}19.#includeiostream.hvoidSB(charch){switch(ch){case'A':case'a':coutwell!;break;case'B':case'b'coutgood!;break;case'C':case'c':coutpass!;breakdefault:coutbad!;break;)coutendl;}6voidmain(){chara[6]=Abcaf'for(inti=0;a[i];i++)SB(a[i]);}21.#includeiomanip.hvoidmain(){inta[8]={3,5,7,9,11,13,15,17};int*p=a;for(inti=0;i8;i++){p+=l0;coutsetw(5)*p++;if((i+1}%3==0}coutendl;}22.#ineludeiomanip,hvoidLF(int&x,inty){x=x+y;y=x+y;coutx=x,y=yendl;}voidmain(){intx=5,y=8,coutx=x'',y=yendl;LF(x,y);coutx=x,Y=Yendl;}23.#includeiomanip,hvoidmain(){intx=25,y=120;coutdec:decsetw(l0)xsetw(l0)yendl;coutoct:octsetw(l0)xsetw(l0)yendl;couthex:hexsetw(10)xsetw(10)ydecendl}答案:1.49,562.6,53.5,674.725.51,13406.well!good!pass!well!bad!7.131517192l2325278.x=5,y=8x=13,y=21x=13,y=89.dec:25120Oct:31170hex:1978四.写出下列每个函数的功能1.doubleFI(doublen){//n为大于等于1的整数doublex,y=0;do{cinx;n--;y+=x;}while(n0);returny;}2.templateclassTypeboolWE(Typea[],Typeb[],intn){intc=0;for(inti=0;in;i++)if(a[i]==b[i])c++;if(c==n)returntrue;returnfalse;}3.voidLK(doublea[],intn){8doubles=0;intI,m=0;for(i=0;in;i

1 / 10
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功