C++考前复习题仅供参考.docx

上传人:b****5 文档编号:5692049 上传时间:2022-12-31 格式:DOCX 页数:20 大小:29.97KB
下载 相关 举报
C++考前复习题仅供参考.docx_第1页
第1页 / 共20页
C++考前复习题仅供参考.docx_第2页
第2页 / 共20页
C++考前复习题仅供参考.docx_第3页
第3页 / 共20页
C++考前复习题仅供参考.docx_第4页
第4页 / 共20页
C++考前复习题仅供参考.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

C++考前复习题仅供参考.docx

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

C++考前复习题仅供参考.docx

C++考前复习题仅供参考

一、单项选择题

1.每个C++程序都必须有且仅有一个(A)

(A)主函数(B)预处理命令(C)函数(D)语句

2.C++程序中的简单语句必须以(B)结束。

(A):

(B);(C)//(D)}

3.按C++标识符的语法规定,合法的标识符是(D)

(A)5name(B)new(C)π(D)Abc

4.设inta=8,b=-6;则条件表达式a

a+2:

b的值为(B)

(A)8(B)-6(C)1(D)0

5.表示“大于-9且小于20的数”,正确的是(B)

(A)-9-9&&x<20 

(C)x>-9||x<20(D)!

(x<=-9||x>=20)

6.C++源程序的文件扩展名为(B)。

(A).h(B).cpp(C).1ib(D).obj

7.按C++标识符的语法规定,合法的标识符是(B)。

(A)float(B)_hi(C)π(D)“hello”

8.设chart=’A’;则表达式5+0.6+t值的数据类型为D  。

A、intB、floatC、不确定D、double

9.转义字符'\n'的功能是(B)。

(A)空格(B)换行(C)空字符(D)水平制表

10.数组元素为指向整型变量的指针,则该一维数组的定义是C  。

A、int*p()B、int(*p)()C、int*p[4]D、int(*p)[4]

11.以下关于switch语句和break语句的描述中不正确的是 A  。

A、break语句不能用于循环语句和switch语句外的任何其它语句

B、switch语句中使用break语句或continue语句的作用相同

C、在循环语句中使用break语句是为了使流程跳出循环体,提前结束循环

在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环的执行。

12.若有以下说明语句

inta[3][4]={2,3,4,5,3,4,5,6,4,5,6,7};

则正确对数组元素引用为 D 。

A、*(a+1)B、*(a[3]+2)C、a[1]+3D、a[0][0]

13.假设inti=2;执行下列语句后i的值为(C)

switch(i)

{case1:

i++;break;

case2:

i--;

case3:

i=i+3;break;

case4:

i=i-3;break;

}

(A)1(B)2(C)4(D)-1

14.写出下列表达式的值(C)

a=3*5,a=b=3*2;

(A)15(B)5(C)6(D)3

15.用来连接两个字符串的函数是(A)

(A)strcat()(B)strcmp()(C)strcpy()(D)strlen()

16.已知intx=6;执行下列语句后,x的值为(C)。

x+=x-=x*x;

(A)-24(B)20(C)-60(D)-30

17.假设inti=3;执行下列语句后i的值为(D)。

switch(i)

{case1:

i++;break;

case2:

i--;break;

case3:

i=i+3;break;

case4:

i=i-3;break;

}

(A)2(B)4(C)0(D)6

18.写出下列代码段中变量c的值(A)。

inta=2,b=5;

intc=a+b;

(A)7(B)8(C)9(D)10

19.用来求字符串复制的函数是(C)。

(A)strcat()(B)strcmp()(C)strcpy()(D)strlen()

20.设inta=12;,则执行完语句a=a*a后,a的值是(B)。

(B)12(B)144(C)156(D)288

21.设X为整型变量,不能正确表达数学关系25

(A)X==26||X==27||X==28(B)25

(C)25

(X<=25)&&!

(X>=29)

22.在PC机中运行的C++语言程序,char类型的数据占A  字节。

A、1B、2C、3D、4

23.写出下列代码段中变量c的值(C)

inta=2,b=5;

intc=(a++,b++,a+b);

(A)7(B)8(C)9(D)10

24.用来求字符串长度的函数是(D)

(A)strcat()(B)strcmp()(C)strcpy()(D)strlen()

25.设inta=12;,则执行完语句a+=a*a后,a的值是(C)。

(C)12(B)144(C)156(D)288

26.在C++语言中,要求参加运算的数必须是整数的运算符是(B)

(A)/(B)%(C)*(D)&&

27.下面for语句结束后,i的值是(C)

for(i=2;i<100;i++);

(A)98(B)99(C)100(D)101

28.设有程序段:

intk=10;

while(k=0)k=k-1;

则下面描述中正确的是(B)

(A)循环是无限循环(B)循环体语句一次也不执行

(C)while语句执行10次(D)循环体语句执行一次

29.已知inti=3;下面while语句执行时的循环次数为(C)

do{i--;

cout<

}while(i!

=0);

(A)1(B)2(C)3(D)4

30.C++中,关于函数说法正确的是(B)

(A)  函数的定义可以嵌套,但函数的调用不可以嵌套

(B)  函数的定义不可以嵌套,但函数的调用可以嵌套

(C)  函数的定义和函数的调用均不可以嵌套

(D) 函数的定义和函数的调用均可以嵌套

31.下面for语句结束后,i的值是(B)。

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

(A)4(B)5(C)6(D)7

32.已知字符B的ASCII码是66,则执行语句:

charch='B'+2;后,cout<

(A)66(B)C(C)D(D)不能确定

33.以下正确的函数原型声明是(A)。

(A)doublef1(inta,intb);(B)doublef1(a,b);

(C)voidf1(inta,b);(D)voidf1(a,intb);

34.下列关于do…while语句的叙述正确的是(A)

(A)do…while语句所构成的循环不能用其他语句构成的循环来代替

(B)do…while语句所构成的循环只能用break语句跳出

(C)do…while语句所构成的循环只有在while后面的表达式非零时才结束

(D)do…while语句所构成的循环只有在while后面的表达式为零时才结束

35.以下正确的函数原型声明是(D)

(A)doublef2(inta;chara);(B)doublef2(a,b);

(C)voidf2(inta,b);(D)voidf2(int,int);

36.若有inta,b,t;下面不能实现将a和b中的数据进行交换的是(C)。

(A)a=a+b,b=a-b,a=a-b;(B)t=a,a=b,b=t;

(C)a=t;t=b;b=a;(D)t=b;b=a;a=t

37.有数组intnum[5]={12,13,14,15,16};则num[0]的值为(A)。

(A)12(B)13(C)14(D)15

38.若用数组名作为函数调用的实参,则传递给形参的是(A)。

(A)数组的首地址(B)数组第一个元素的值

(C)数组中全部元素的值(D)数组元素的个数

39.以下程序段的执行结果是(C)。

intone=1;

int&two=one;

two=2;

cout<

(A)0(B)1(C)2(D)3

40.下面对字符串赋初值的语句中错误的是(C)。

(A)charstr[6]="test!

";(B)charstr[6]={'t','e','s','t','!

','\0'};

(C)charstr[6]='test!

';(D)charstr[]="test!

";

41.在C++语言中,引用数组元素时,其数组下标的数据类型不允许是(D)

(A)整型常量(B)整型表达式

(C)整型常量或整型表达式(D)变量

42.有数组intnum[5]={12,13,14,15,16};则num[2]的值为(C)

(A)12(B)13(C)14(D)15

43.若有说明:

inta[5][6],则对a数组元素的正确引用是(C)

(A)a[4,2](B)a[5][6](C)a[1+3][1](D)a(4)

(2)

44.以下程序段的执行结果是(D)

intaa=2;

int&bb=aa;

bb=6;

cout<

(A)0(B)2(C)4(D)6

45.C++中,函数的返回值的类型是由(C)

(A)  调用该函数时的主调函数类型所决定

(B)  调用该函数时系统临时决定

(C)  在定义该函数时所指定的函数类型所决定

(D) return语句中的表达式类型所决定的

46.已有定义intk=2;int*p1,*p2;且p1和p2均已指向变量k,下面能正确执行的赋值语句是(A)

(A)k=*p1+*p2;(B)p2=k;

(C)p1=*p2;(D)*p1=p2;

47.已知以下程序段:

voidfunc()

{intn=5;}

intmain()

{intn=4;

func();

cout<

return0;

}

则程序的输出结果是(A)

(A)4(B)5(C)0(D)1

48.已知以下程序段:

intfunc(intx,inty)

{returnx*y;}

intmain()

{

intj=5;

intm=func(j,2);

intk=func(j,3);

return0;

}

则程序中变量m和k的值分别为(B)

(A)15,10(B)10,15(C)10,10(D)15,15

49.以下程序段的执行结果是(A)。

voidadd(inta,intb)

{a++;

b++;

}

voidmain()

{intx=1,y=2;

fun(x,y);

cout<

}

(A)12(B)22(C)23(D)33

50.函数默认参数在函数原型中说明,默认参数必须放在参数列表的(C)。

(A)前部(B)中部(C)后部(D)两端

51.下列程序段中循环体执行的次数为(D)。

for(n=1;n<4;n+2);

(A)2(B)3(C)4(D)无限次

52.设a,b,c,d,m,n均为整型变量,且a=7,b=5,c=3,d=8,m=2,n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为(A)。

(A)0(B)1(C)2(D)3

53.已知以下程序段:

intfunc(intx,intn=2)

{returnx*n;}

intmain()

{

inta=5;

intm=func(a);

intk=func(a,3);

return0;

}

则程序中变量m和k的值分别为(B)。

(A)15,10(B)10,15(C)10,10(D)15,15

54.下列语句中不是死循环的是(A)

(A)inti=100;

while

(1){i=i%100+1;if(i==20)break;}

(B)inti,sum=0;

for(i=1;;i++)sum++;

(C)intk=0;

do{++k;}while(k>=0);

(D)ints=3379;

while(s++%2+3%2)s++;

55.以下 C 为不正确的if语句。

A、if(x>y);B、if(x==y)x+y;

C、if(x!

=y)cin>>xelsecin>>y;D、if(x

56.在intb[][3]={{1},{3,2},{4,5,6},{0}};b[2][2]的值是(D)

A.0B.2C.5D.6。

57.要定义数组A,使得其中每个元素的数据依次为:

3、9、4、8、0、0、0,错误的定义语()

 A.intA[]={3,9,4,8,0,0,0,};              B.intA[7]={3,9,4,8,0,0,0};

 C.intA[]={3,9,4,8};                     D.intA[7]={3,9,4,8};

58.下面的程序,对于输入:

29,输出的结果是(B)

#include

usingnamespacestd;

voidmain()

{

inta;

floatb;

cin>>a>>b;

cout<<"a+b="<

}

(A)a+b=2(B)a+b=11(C)a+b=26(D)a+b=24

59.下列选项中属于C++语句的是(A)

(A);(B)a=17(C)i+5(D)cout<<'\n'

60.若有定义inta=7;则下列语句组对应的输出结果是(D)

switch(a%5)

{

case0:

cout<

case1:

cout<<++a;

case2:

cout<

case3:

cout<<--a;

default:

cout<<"其他值";

}

(A)其他值(B)5(C)7(D)75其他值

61.下列程序段中循环体执行的次数为(C)

for(m=4;m;m-=2)

for(n=1;n<4;n++)

{s=m+n;}

(A)16(B)12(C)6(D)8

62.在一个被调用函数中,关于return语句使用的描述,下列哪项是错误的()

A.被调用函数中可以不用return语句

B.被调用函数中可以使用多个return语句

C.被调用函数中,如果有返回值,就一定要有return语句

D.被调用函数中,一个return语句可返回多个值给调用函数

63.若i为整型变量,则下列while循环执行的次数为(A)

i=10;

while(i==0)i=i-1;

(A)0次(B)1次(C)10次(D)无限次

64.设有intx=8;则表达式++x/3的值是(B)

(A)2(B)3(C)2.6(D)0

65.若变量c为char型,能正确判断出c为大写字母的表达式是(D)。

(A)'A'<=c<='Z'(B)(c>='A')||(c<='Z')

(C)('A'<=c)and('Z'>=c)(D)(c>='A')&&(c<='Z')

 

(密封线内不答题)

……………………………………………………密………………………………………………封………………………………………线……………………………………线………………………………………

姓名学号

学院专业座位号

(密封线内不答题)

……………………………………………………密………………………………………………封………………………………………线……………………………………线………………………………………

二、阅读下列程序,写出执行结果。

1.

#include

usingnamespacestd;

intmain()

{

inta=5,b=10,c=3,d=0;

c+=a;

d--;

++b;

cout<<"a="<

cout<<"b="<

cout<<"c="<

cout<<"d="<

return0;

}

答案:

a=5,b=11,c=8,d=-1

2.

#include

usingnamespacestd;

intmain()

{

intn2=0,n3=0,n5=0;

intM=10;

for(inti=1;i<=M;i++)

{

if(i%2==0)n2++;

if(i%3==0)n3++;

if(i%5==0)n5++;

}

cout<

return0;

}

答案:

n2=5,n3=3,n5=2

 

3.

#include

voidmain()

{

inti=1,s=0;

while(i<=5)

{s=s+i;i=i+1;}

cout<<”s=”<

return0;

}

答案:

s=15

4.

#include

usingnamespacestd;

intmain()

{

intn2=0;

intM=10;

for(inti=1;i<=M;i++)

{

if(i%2==0)n2++;

}

cout<

return0;

}

答案:

n2=5

5.假定输入4个整数:

87,32,64,53下列程序的输出结果是?

#include

usingnamespacestd;

intmain()

{  

inta,b,c,x;

  a=b=c=0;

  for(intk=0;k<4;k++)

  {  cin>>x;

switch(x%3)

{  case0:

 a+=x;break;

   case1:

 b+=x;break;

   case2:

 c+=x;break;

}

  }

cout<

return0;}

答案:

a为87,b为64,c为85

6.

#include

usingnamespacestd;

voidswap(int*x,int*y)

{

inttemp;

temp=*x;

*x=*y;

*y=temp;

}

intmain()

{inta,b;

a=5;b=7;

cout<<"a="<

swap(&a,&b);

cout<<"a="<

return0;

}

答案:

7.#include

usingnamespacestd;

voidmain()

{

inta[8]={25,-6,32,8,76,18,48,29};

intmax,min;

max=min=a[0];

for(inti=1;i<8;i++)

{

if(max

if(min>a[i])min=a[i];

}

cout<<"max:

"<

cout<<"min:

"<

}

8.

#include

usingnamespacestd;

intmain()

{

inta=2,b=-1,c=2;

if(a>b)

if(b<0)c=0;

elsec+=1;

cout<

return0;

}

 

9.

#include

usingnamespacestd;

intmain()

{

intb[6]={1,1};

for(inti=2;i<6;i++)

{b[i]=b[i-2]+b[i-1];

}

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

{

cout<

}

return0;

}

10.

#include

us

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

当前位置:首页 > 医药卫生 > 基础医学

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

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