2010a计算机、通信语言复习_第1页
2010a计算机、通信语言复习_第2页
2010a计算机、通信语言复习_第3页
2010a计算机、通信语言复习_第4页
2010a计算机、通信语言复习_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

C++程序复习一.选择题(每2分40分 )是C/C++合法的标识符。 下面的程序,对于输入:2915,输出的结果是 #include<iostream>voidmain(){inta;floatb;cout<<”inputa,b”<<endl;} 编译预处理命令是在编译之前被处理 ifelseswitchdefaultC.C++return A.inta,&b=a; B.floata,*b=&a;C.inta(4),b(0); D.inta=b=5; *=. B.*=.%.&&.C.%.!=.&& D.&&.!=.已知x,y,z,ch( 若有变量定义”inta=7;”,则下列语句组对应的输出结果是 {case0:cout<<a++;case1:case2:cout<<a--;case3:cout<<--} {if(m*n%3==0)continue;}B. “ABC, charwhile(cin>>c,c!=’\n’) B. int B.intC.int D.inta[3][4]={{1,25,3},{2,4,7,9},{3,6,58}},*p=&a[0][0]; B. voidf1(inta=3,intb,intvoidf2(inta,intb=3,incvoidf3(inta,intb,intvoidf4(inta,intb,int3); #include<iostream.h>intm=10;voidf(intm,int{}void{intn=5;} D.m=12 B.作用域的范围 以下 A. B. C. D.(#include<iostream.h>intfun(char*s){char*p=s;while(*p!='\0')p++;return(p-s);}voidmain(){} D.forwhile A.setbase(intn) B.setw(intn)C.setfill(intn) D.setprecision(intn)在inta[][3]={{1},{3,2},{4,5,6},{0}}中,a[2][2]的值是 B. 下面正确定义数组的语句是(int B.intC.int D.int已知charc;constchar*pc="asdf";( 若有变量定义”inta=7;”,则下列语句组对应的输出结果是 {case0:cout<<a++;case1:case2:cout<<a--case3cout<<a;break;} {if(i%3==0)continue; B. 执行下列语句后的输出结果是(inthot=10;int&rad=hot; inti;intfor(i=0;i<3;i++)cout<<x[i][2- 4 A.strlen() B.strcap() C.strcat() D.strcmp()intchar则数值为4的表达式是 A.x[g- B. C.x[‘d’- D.x[’d’-则函数形参个数是 A. B. D.usingnamespacestd;intmain(){cout return}则程序中下划线处遗漏的操作符 D.不能 在一个源文件中,如果函数定义在先,调用在后,则不必该函如果一个函数在一个源文件里定义,而调用在另一个源文件中,则必须在调用之前该函数的应使用函数原在一个源文件中,如果自定义函数调用在先,定义在后,则不必该函若有inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};int(*q)[4]=a;*q=a[0];则能够正确表示数组元素a[1][2]的表达式是( A. B. C. D. 设intx[]={1,3,5,7,9,11,13},*p=x;则不能正确数组元素的表达式是 B.*(-- inta,b;{if(a>=10)break;if(a%2==1){a+=5;continue;}}A. B. D.在下面的定义中,正确的是 int B.int C.int D.floatz;int下面对模板的正确的是 Template<classt1,classC.Template<classt1, D.Template<classt1;class已知一个类A的定义如下,则执行“Ax(3);”语句后,x.a和x.b的值分别为 class{inta,b;A(intaa=1,intbb=0)}A.1和 B.3和 13)A. B. C.49.下列变量名中 A. B. A. B. 字符类 D.类 C. C. D. 八进制 D.整型变量i定义后赋初值的结果是 inti=2.8*6 intm=31;则表达式(m++*1/2)的值是( 在C++语言中,自定义的标识符( C. C. D.定义如下变量:inti=2;intj=3;则i/j的值是 B. D.已知inta=2,a+=a-=a*a的值是 D. C.2,3 D.2,4 chara=’a’ C.a=65 D.a=A-3264.for(i=0,x=0;!x&&i<=3;i++)循环的次数为( D{inta=2,b=-1,c=2; if(b<0) }执行后输出结果是 C.3 D0inti=10; case9:case10:case11:i++;default:}执行后输出结果是 B. C. D. breakcontinuebreakcontinuebreakcontinue以下for循环的执行次数是 for(x=0,y=0;(y=123)&&(x<2);执行1 B.执行2 C.执行3 D.无限为了避免嵌套的if—else语句的二义性,C语言规定else总是与 缩排位置相同的if C.在其之前未配对的最近的if D.同一行上的ifbreak语句的作用是 breakswitchbreakbreakswitchbreakswitch下面程序段执行完后,x的值是 x=0for(i=0;i<90;i++)if(i)x++; D.continue语句的作用是 continue下列程序段循环()intx=-10while }for(inti=1; if(i%2==0)continue; 执行以下程序段的输出结果是( D.2,475.用逻辑表达式表示“大于10而小于20的数,正确的是( B.x>10|| switchcodecase子句是合法的( “3” B.case C.case3 D.设inta=10,b=11,c=12;(a+b)<c&&b==c的值是 C.- D. ifelseswitchdefaultC.C++return若m是一个值为10的int型变量,n是一个bool型变量,则表达式!m||n>0的值为 C.与n的值相 D.与n的值相下列dowhile循环的循环次数是(inti=5do{cout<<i--<<endl;i--;}while(i!=0) D若有以下定义语句:inta[10]={1,2,3,4,5,6,7,8,9,10};则下列 B.a[a[3]- D.对语句:inta[3][4]={0};描述正确的是 a[0][0]a0D.数组a中各元素都可得到初值,但其值不一定为083.若有以下定义,则数组元素a[2][2]的值是( int B.5 A.int B.intC.int D.int若定义了一个4行3列的数组,则第8个元素是 判断两个字符串(分别用a,b表示)是否相等的操作为 B.if(a==b) D.if(strcpy(a,b)) A.inaC.intn;cin>>n;intB.intn=10;intD.constintn=10;int)A.#define charconstint charintchar

constintchar执行下列语句:intc[4]={0,1,2,3};for(inti=0;i<4;i++)c[i]=c[i]+i;则c[3]的值是 ) intarea[4]={1,2,3,4};执行程序for(inti=1;i<=4;i++) A.char B.charC.chara[4]=”abcd”; D.chara[2][2]={“ab”,”cd”}; A.指针变量是用于变量地址的变若已经定义了a为int型变量,则对指针变量p的定义及初始化正确语句是 int B.int C.int D.intab(intint和int B.int*和int C.int和int* D.int*和int* {inta=1,b=3,int} D.intx=8,*p=&x;输出的值为 C.8的地 D.9的地设有定义语句:int*point,a=4;和point=&a;下面均代表地址的一组选项是 a, C.point, D.a,设有定义语句:inta[10],*p=a;对数组元素正确使用的语句是 设有定义语句:inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a3( D.p+=2,*(++p)100.设intx[]={1,2,3,4,5,6};*p=x;则数值为3的表达式是( D.设intx[10]={10,9,8,7,6,5,4,3,2,1};*p=x;则数值为2的表达式是 C. D.char s+=2;cout<<*s<<endl;输出的值为 C.c的地 设有定义语句:int*p[4];则标志符p是 D.一个的定义语句 intint*p[3]; C++中函数返回值的类型是由()A.return语句中的表达式类型所决定 A.构成C++程序的基本单位是函数 fun(intx;inty) B.intfun(intx,inty)C.intfun(intx,y) D.intfun(intx;)若有函数原型intsum(intx,inty);则使用语句cout<<sum(a,b);调用该函数时,实参变量a和形参变量x之间的数据传递方式为( 指针传 B.传 要求函数的功能是交换x和y中的值,且通过正确调用返回交换结果。能实现正确交换功能 voidfuna(int&x,int{intp=x;x=y;C.void *x, { 关于下列说法正确的是

B.void x, {intt=x;x=y;D.void x, x=x+y;y=x-y;x=x-y在时,要给它另开辟内存单在时,可以不进行初始在C++函数头定义中,若省略了返回值的数据类型,其默认的返回值的数据类型为( D.double 在关键字private后面的成员,只允许本类中的函在类的外部只能类的公有成112.类Time的构造函数名是) D. )构造函数定义创建对象的方法,提供了初始化对象的一种简便C.如果程序中未构造函数,则系统自动产生出一个缺省形式的构造函Dvoid115dogAnimal对象(Animal“dog”; B.Animaldog; 116.类Animal的构造函数名是( 以下哪项表明displayBreed()函数是Animal类的成员函数( 为了使类中的某个成员不能被类的对象通过成员选择运算符,则不能把该成员的权 A.抽象隐藏继承多 B.抽象封装继承多C.抽象隐藏继承封 D.重装封装继承多 D.删除对 124.以下正确的说法是() myadd(doublea,double{return(a+b)doublemyadd(doublea,b)doubledoublemyadd(doubleb,doublea)doublemyadd(doublex,double若有以下的说明和语句,则在执行for语句后,*(*(pt+1)+2)表示的数组元素是( t[3][3],*pt[3],k;for(k=0;k<3;k++) A. B. C. D. }a={"li则对字符串lining的方式不可以是 A. B. C. D.p- #defineMA(x,y) B. D. intlen;char*str;} A.指针str B.指针p C.str所指的内 inta,b;{if(a>=10)break;if(a%2==1){a+=5;continue;}}A. B. D. void{} inta[2]={5,5}; 0, C. D.0char*fun(char{return}该函数的返回值是 B.形参p中存放的地址C.形参p自身的地址 D.编译有 #includevoid{charinti,j;cout<<i<<’}6 B. C. D. if((a>b)&&(b>c)) if((a>b)||(b>c) C.if(a<=b) D.if(a>B) elseif(b<=c) elseif(b>C) elsek=0;136.下面各语句中,能正确进行赋字符串操作的语句是()A.char B.charC.char*s; D.char*s;137.以下程序的执行结果是 intx,y;do{if(y>20)break;}A.x=12 X=14 classAA{inti;voidvoidvoidAA(intA.int B.void C.void D.voidAA(intx)说明:构造函数和析构函数不允许有参数和返回值,void设inta=4,b=8;则++a*b的结果是 staticint B. C. 执行语句for(i=1;i++<4;);后变量i的值为 A. B. C. D.若变量a、i已正确定义,且i已正确赋值,下列语句合法的是 B. C. D. A.类创建 B.创建对象 C.删除对象 D.不自动调用Cint2unsignedint A. B. C. D. B.用户可以指定转移的位 D.continue语句可以结束本次循 class{intx;voidinit(intinitX,intinitY);inty;intintSetY()}A. B. C. D.BA B.对应的参数类型必须不相C.A和B必须同时满 D.A和B只要满足一个即 类的说明如下,请错误的地方 class{inta=111;Myclass(intx,inty);Myclass(intval);~Myclass()}int B.Myclass(intx,intC.Myclass(intval) D.~Myclass() 二.写出下列表达式的值(2101.3.5*3+2*7--2.3.int9 设a的初值为 inta=12;a+=a- intdoublem=10.5,n=4.0,k; doublex=2.5,y=4.7;inta=7; int int floatx=(float)(7/3 三.填空关系表达式x+y>5的相反表达式 bbb2

的C++表达式 已知语句cout<<s;的输出是“apple”,则执行语句“cout<<s+2;”的输出结果为 设有inta[4],pa是指向该数组的指针,则pa应初始化 “intintAA::abc() 假定x是一个逻辑量,则x&&true的值 定义一个函数模板要用到的第一个修饰符 abintf2(inta,int{inti=2,p=1;do{while(a%i==0 b%i==0{p*=i;a/=i;}}while(a>=i&&b>=i);returnp*a*b;若x=5,y=10,则计算y*=++x表达式后,x+y的值 生存期与区域关系密切,一般区域分为代码区(codearea).数据区(dataarea).area分别为【2】.【3】.【4(静态生存期.局部生存期.动态生存期)面向对象程序设计的特点是【5】.【6】.【7】和多态性13.(3*3+2.5*4)/2,【8若a是一个字符数组,则cin>>a表示从键盘上读一个【9 到数组a中。字符面向对象的模型中,最基本的概念是对象和【10】。类可以赋给指针的唯一整数是【11】。C+main(),二是系统提供的【12用户【13】。自定义函数a=3,b=4,c=5,(a*=!a)&&(b+=c)||(c++)a=0【14】,b=4【15】,c=6【16若ainta=25/3%3a17x,y,zintx=3,y=-4,z=5①(x&&y)=1②!(x>y)+(y!=z)||(x+y)&&(y-1③x++- .传递C++语言的标识符只能 字 .数字和_下划线三种字符组成,且打头字符不能数 C++iostream.h转义字符序列中的首字符是\空字符串在内存中的空间是1个字节以/*开始,*/结束,在/*和*/C+int.float.double.char.bool#include<iostream>usingnamespacestd;voidmain(){inti,j;doubletemp;doublefor(i=1;i<11;i++)cin>>a[i]; ){temp=a[i]; cout<<"排序后的10个数为:"<<endl;for(j=1;j<=10;j++)cout<<a[j]<<" }j=i+1;类的成员为私有类型的关键字是 (public)在类A的基础上,通过增加成员可以产生新的类B。由类A产生类B的过程称为派生,此时通过称类A为了基 类,类B为 继承方式关键字为private时,基类的公有成员在派生类中是私 fun(5)*10fun(k)=fun(k-1)*kk=0fun(0)=3。#include<iostream>voidmain() intfun(int);}int 【2 )int{ returnfun(k-}设a3,(int)(a+6.5)%2+(a=b=5)6【7四.阅读程序,写出程序运行结果(每题5分,共25分#include<iostream.h>voidmain(){intm,n=4,k;longintt,s=0;{}}写出该程序求解的表达式(3)及结果(2#includevoidfun(int*s,intn1,int{inti,j,t;i=n1;j=n2;while(i<j){ i++;j--;}}void{intfun(p,0,3);fun(p,4,9);fun(p,0,9);for(i=0;i<10;i++)cout<<*(a+i);}usingnamespacevoid intx=20;int&y=x;cout<<(x==y)<<”“;}#include<iostream.h>intcount(double{doublewhile(*p!=0)p++;return(p-a);}void{double}classA{int{cout<<”con1}A(int{cout<<”con2}A(intm,int{cout<<”con3}void{}void{A}#defineM1.5#defineA(a)M*avoidmain(){intx=5,y=6;}voidmain(){chara[]=”abcdabcabfgacd”;inti1=0,i2=0,i=0;{if(a[i]==’a’)if(a[i]==’b’)i2++;}cout<<i1<<‘’<<i2<<}#include<iostream.h>template<classT>Tmin(Ta[],int{intTv={if(v>v=}return} inta=1;int{staticinti=0;a+=i;i++;returna;}voidmain(){inti,s=0;} intfunc(charintwhile(*(s+length))length++;returnlength;}voidchara[10],*ptr=a;}如果输入字符串o!并回车,则输出结果是 classTeample{inta,b;Teample(intx,inty){a=x;b=y;}voiddisp(){}void{Teample} 2041 struct charname[10];intnum;voidf1(structSTU structSTU }voidf2(structSTU struct }main( f1(a);f2(&b);}#include<iostream>voidmain(){inta[4],i,j,k; }结果 #include<iostream>#include<iomanip>usingnamespacestd;voidmain(){ints[3][3],i,j,k; {for(j=0;j<3;j++)}} - -2- #include<iostream>#inc

温馨提示

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

评论

0/150

提交评论