C++习题.docx

上传人:b****7 文档编号:8933312 上传时间:2023-02-02 格式:DOCX 页数:34 大小:37.96KB
下载 相关 举报
C++习题.docx_第1页
第1页 / 共34页
C++习题.docx_第2页
第2页 / 共34页
C++习题.docx_第3页
第3页 / 共34页
C++习题.docx_第4页
第4页 / 共34页
C++习题.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

C++习题.docx

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

C++习题.docx

C++习题

一、单项选择题

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

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

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

(A):

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

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

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

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

a+2:

b的值为()

(A)1(B)0(C)-10(D)5

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

(A)1010&&x<20 

(C)x>10||x<20(D)!

(x<=10||x>=20)

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

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

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

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

8.设inta=5,b=7;则条件表达式8<4?

a:

b的值为()。

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

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

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

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

(A)double(B)_temp(C)π(D)“moon”

11.下列C++标点符号中表示一条语句结束的是()

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

12.设inta=8,b=4;则条件表达式8<4?

a:

b的值为()

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

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

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.写出下列表达式的值()

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

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

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

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

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

x+=x-=x*x;

(A)25(B)20(C)-40(D)40

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

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的值()。

inta=2,b=5;

intc=a+b;

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

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

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

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

(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.假设inti=4;执行下列语句后i的值为()

switch(i)

{case1:

i++;break;

case2:

i--;break;

case3:

i=i+3;break;

case4:

i=i-3;break;

}

(A)1(B)3(C)5(D)7

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

inta=2,b=5;

intc=a++,b++,a+b;

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

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

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

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

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

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

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

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

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

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

28.设有程序段:

intk=10;

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

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

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

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

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

do{i--;

cout<

}while(i!

=0);

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

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

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

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

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

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

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

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)doublef1(inta,intb);(B)doublef1(a,b);

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

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

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

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

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

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

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

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

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

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

(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)12(B)13(C)14(D)15

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

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

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

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

intone=1;

int&two=one;

two=2;

cout<

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

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

(A)charstr[6]="test!

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

','\0'};

(C)charstr[6]='test!

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

";

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

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

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

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

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

43.若有说明:

inta[3][4],则对a数组元素的正确引用是()

(A)a[1+1][0](B)a[3][4](C)a[1,3](D)a

(2)

(1)

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

intaa=2;

int&bb=aa;

bb=6;

cout<

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

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

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

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

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

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

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

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

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

47.已知以下程序段:

voidfunc()

{intn=5;}

intmain()

{intn=4;

func();

cout<

return0;

}

则程序的输出结果是()

(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的值分别为()

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

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

voidadd(inta,intb)

{a++;

b++;

}

voidmain()

{intx=1,y=2;

fun(x,y);

cout<

}

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

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

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

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

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

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

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)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的值分别为()。

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

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

(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.已知以下程序段:

voidfunc()

{intn=5;}

intmain()

{intn=4;

func();

cout<

return0;

}

则程序的输出结果是()

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

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

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

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

{s=m+n;}

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

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

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

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

2915,输出的结果是()

#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);(B)a=17(C)i+5(D)cout<<'\n'

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

switch(a%5)

{

case0:

cout<

case1:

cout<<++a;

case2:

cout<

case3:

cout<<--a;

default:

cout<<"其他值";

}

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

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

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

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

{s=m+n;}

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

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

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

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

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为大写字母的表达式是()。

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

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

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

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

67.下列选项中,是C++关键字的选项为()

(A)ELSE(B)Static(C)case(D)integer

68.在C++中,char型数据在内存中是以()形式存放的。

(A)原码(B)补码(C)反码(D)ASCII码

69.设intx=5;则执行完x+=3之后,x的值为()

(A)2(B)3(C)5(D)8

70.下列错误的十六进制整型常量表示是()

(A)0x22(B)0xcf(C)0x3g(D)0xee

71.while和do…while循环的主要区别是()

(A)while的循环控制条件比do…while的循环控制条件严格

(B)do…while的循环体至少无条件执行一次

(C)do…while允许从外部转到循环体内

(D)do…while的循环体不能是复合语句

72.可以用()语句退出循环,继续执行循环之后的语句。

(A)loop;(B)break;(C)exit;(D)continue;

73.下面代码段的输出结果是()

for(intj=1;j<10;j=j+3)

cout<

(A)123456789

(B)13579

(C)147

(D)159

74.引入内联函数的主要目的是()

(A)  缩短程序代码

(B)  使程序的结构比较清晰

(C)  少占用内存空间

(D) 既可以保证程序的可读性,又能提高程序的运行效率

75.下面有关重载函数的说法中正确的是()   

(A)重载函数的形式参数的类型或个数必须不同; 

(B)重载函数的形式参数的个数必须不同;    

(C)重载函数的形式参数的类型必须不同;  

(D)重载函数的返回值类型必须不同; 

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

voidfun(int&a,int&b)

{inttemp=a;

a=b;

b=temp ;

}

voidmain()

{intx=6,y=8;

fun(x,y);

cout<

}

(A)68(B)86(C)66(D)88

77.在类定义的外部,可以被访问的成员为()

(A)public的类成员(B)private的类成员

(C)protected的类成员(D)所有类的成员

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

(A)charstr[6]=”good!

”;(B)charstr[]=”good!

”;

(C)charstr[6]=’good!

’;(D)charstr[6]={‘g’,’o’,’o’,’d’,’!

’,’\0’};

79.有关类和对象的说法错误的是()

(A)对象是类的一个实例

(B)一个类只能有一个对象

(C)任何一个对象只能属于一个具体的类

(D)类与对象的关系和数据类型与变量的关系相似

80.有数组定义:

chararray[]="HuaDu";则数组array所占的空间为()个字节。

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

81.已知字符B的ASCII码是66,

则执行语句:

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

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

81.已知以下程序段:

voidfunc()

{intn=3;}

voidmain()

{intn=2;

func();

cout<

}

则程序的输出结果是()

(A)1(B)2(C)3(D)不能确定

82.以下定义语句中,错误的是()

(A)inta[]={1,2};

(B)chara[4]={'1','2','3','\0'};

(C)chars[10]="test";

(D)intn=5,a[n];

83.以下死循环的程序段是()

(A)for(intx=0;x<4;)

{x++;}

(B)intk=0;

do

{++k;

}while(k>=0);

(C)inta=3 ;

while(a)

{a--;}

(D)inti=5;

for(;i;i--)

;

84.C++源程序文件的扩展名为()

(A)exe(B)obj(C)cpp(D)lik

85.C++程序从上机到得到结果的几个操作步骤依次是()

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

当前位置:首页 > 高等教育 > 农学

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

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