C++习题.docx

上传人:b****7 文档编号:26128710 上传时间:2023-06-17 格式:DOCX 页数:34 大小:29.59KB
下载 相关 举报
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.以下叙述不正确的是()。

A.一个C++源程序可由一个或多个函数组成

B.一个C++源程序必须包含一个main函数

C.C++程序的基本组成单位是函数

D.在C++程序中,注释说明只能位于一条语句的后面

4.C++语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()。

A.必须为字母B.可以是字母、数字和下划线中任一种字符

C.必须为下划线D.必须为字母或下划线

5.下面不正确的字符串常量是()。

A.‘abc’B.“12’12”C.“0”D.“ ”

6.下面正确的字符常量是()。

A."c"B."\\"C.'W'D.''

7.以下表达式值为3的是()。

A.16-13%10B.2+3/2

C.14/3-2D.(2+6)/(12-9)

8.下列表达式的值为0的是()。

A.3<5B.3/5.0C.3/5D.3%5

9.若有代数式3ae/(bc),则不正确的C++语言表达式是()。

A.a/b/c*e*3B.3*a*e/b/c

C.3*a*e/b*cD.a*e/c/b*3

10.在C++语言中,要求运算数必须是整型的运算符是()。

A./B.++C.!

=D.%

11.若x、i、j和k都是int型变量,则执行下面表达式后x的值为()。

x=(i=4,j=16,k=32)

A.4B.16C.32D.52

12.执行表达式a=12,a=a+13,a+20后a的值为()。

A.45B.12C.25D.13

13.设intx=1,y=2,z=3;,则表达式x==z||x+y>z的值是()。

A.0B.1C.2D.3

14.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’+‘6’-‘3’;后,c2中的值为()。

A.DB.EC.不确定的值D.C

15.设有说明:

charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为()。

A.intB.floatC.doubleD.char

16.设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为()。

A.intB.floatC.doubleD.不确定

19.若a,b,c均定义为int型,则输入函数采用cin>>a>>b>>c;格式时,其输入数据的正确式是()。

A.12,24,36B.122436

C.a=12,b=24,c=36D.a=12b=24c=36

20.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,不正确的数据输入方式是()。

inta1,a2;charc1,c2;

cin>>a1>>a2;

cin>>c1>>c2;

A.1020AB<回车>B.1020<回车>AB<回车>

C.1020AB<回车>D.1020AB<回车>

21.有输入语句:

cin>>a>>b>>c);为使变量a的值为1,b为3,

c为2,从键盘输入数据的正确形式应当是()。

(_表示空格)"

A.132<回车>B.1,3,2<回车>

C.132<回车>D.a=1,b=3,c=2<回车>

23.以下能正确地定义整型变量a,b和c并为其赋初值5的语句是()。

A.inta=b=c=5;B.inta,b,c=5;

C.inta=5,b=5,c=5;D.a=b=c=5;

24.若有以下定义,则正确的赋值语句是()。

inta,b;floatx;

A.a=1,b=2B.b++;C.a=b=5D.b=int(x);

25.逻辑运算符两侧运算对象的数据类型()。

A.只能是0或1B.只能是0或非0正数

C.只能是整型或字符型数据D.甚至可以是实型和指针类型的数据

26.以下关于运算符优先顺序的描述中正确的是()。

A.关系运算符<算术运算符<赋值运算符<逻辑与运算符

B.逻辑与运算符<关系运算符<算术运算符<赋值运算符

C.赋值运算符<逻辑与运算符<关系运算符<算术运算符

D.算术运算符<关系运算符<赋值运算符<逻辑与运算符

27.判断char型变量c1是否为小写字母的正确表达式是()。

A.‘a’<=c1<=‘z’B.(c1>=a)&&(c1<=z)

C.(‘a’>=c1)||(‘z’<=c1)D.(c1>=‘a’)&&(c1<=‘z’)

28.判断char型变量c1是否为大写字母的正确表达式是()。

A.‘A’<=c1<=‘ZB.(c1>=A)&&(c1<=Z)

C.(‘A’>=c1)||(‘Z’<=c1)D.(c1>=‘A’)&&(c1<=‘Z’)

29.表示图中坐标轴上阴影部分的正确表达式是()。

////////

////////

                            X

abc

A.(x<=a)&&(x>=b)&&(x<=c)

B.(x<=a)||(b<=x<=c)

C.(x<=a)||(x>=b)&&(x<=c)

D.(x<=a)&&(b<=x<=c)

30.若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”,则以下不能满足要求的表达式是()。

A.A%2==1B.!

(A%2==0)C.!

(A%2)D.A%2

31.设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是()。

A.‘x’&&‘y’B.x<=y

C.x||y+z&&y-zD.!

((x

z||1)

32.已知x=43,y=0,ch=‘A’;则表达式(x>=y&&ch<‘B’&&!

y)的值是()。

A.0B.语法错C.1D.“假”

33.执行以下语句后a的值为()。

inta=5,b=6,w=1,x=2,y=3,z=4;

(a=w>x)&&(b=y>z);

A.5B.0C.2D.1

34.以下程序的运行结果是()。

#include

usingnamespacestd;

main()

{

inta,b,d=241;

a=d/100%9;

b=(-1)&&(-1);

cout<

}

A.6,1B.2,1C.6,0D.2,0

35.以下if语句语法正确的是()。

A.if(x>0)cout<

elsecout<<-x;

B.if(x>0)

{x=x+y;cout<

elsecout<<-x;

C.if(x>0)

{x=x+y;cout<

elsecout<<-x;

D.if(x>0)

{x=x+y;cout<

elsecout<<-x;

36.为了避免在嵌套的if-else中产生二义性,C++语言规定:

else子句总是与()配对。

A.缩排位置相同的ifB.其之前最近的if

C.其之后最近的ifD.同一行上的if

37.以下不正确的if语句形式是()。

A.if(x>y&&x!

=y);B.if(x==y)x+=y;

C.if(x!

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

38.已知intx=10,y=20,z=30;以下语句执行后x,y,z的值是()。

if(x>y)z=x;x=y;y=z;

A.x=10,y=20,z=30B.x=20,y=30,z=30

C.x=20,y=30,z=10D.x=20,y=30,z=20

39.设有定义intx=1;inty=‘a’<‘A’?

x--:

x++;,则变量y的值是()。

A.0B.1C.2D.3

40.设intx=1,a=9,b=6,c=7,d=8;则执行语句:

if(a>b)if(c>d)x=2;elsex=3;后,x的值是()。

A.不确定B.2C.3D.1

41.若有以下定义,则能使值为3的表达式是()。

intk=7,x=12;

A.x%=(k%=5)B.x%=(k-k%5)C.x%=k-k%5D.(x%=k)-(k%=5)

42.设以下变量均为int类型,则值不等于7的表达式是()。

A.(x=y=6,x+y,x+1)B.(x=y=6,x+y,y+1)

C.(x=6,x+1,y=6,x+y)D.(y=6,y+1,x=y,x+1)

43.有一函数关系见下表:

x

y=

x<0

x-1

x=0

x

x>0

x+1

下面程序段中能正确表示上面关系的是()。

A.y=x+1;B.y=x-1;

if(x>=0)if(x!

=0)

if(x==0)y=x;if(x>0)y=x+1;

elsey=x-1;elsey=x;

C.if(x<=0)D.y=x;

if(x<0)y=x-1;if(x<=0)

elsey=x;if(x<0)y=x-1;

elsey=x+1;elsey=x+1;

44.以下程序的输出结果是()。

main()

{

intx=2,y=-1,z=2;

if(x

if(y<0)z=0;

elsez+=1;

cout<

}

A.3B.2C.1D.0

45.以下不正确的语句为()。

A.if(x=y)&&(x!

=0)x+=y;

B.if(x!

=y)cin>>x;elsecin>>y;

C.if(x>y);

D.if(x

46.以下程序的运行结果是()。

main()

{

intk=4,a=3,b=2,c=1;

cout(k

k:

(c

c:

a));

}

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

47.不用第三个变量,将变量a和b的值进行互换的操作是()。

A.b-=a;a=b-a;a+=b;B.a+=b;b=a-b;a-=b;

C.b-=a;a-=b;a-=b;D.a+=b;b-=a;a-=b;

48.若运行时给变量x输入12,则以下程序的运行结果是()。

main()

{

intx,y;

cin>>x;

y=x>12?

x+10:

x-12;

cout<

}

A.0B.22C.12D.10

49.若w、x、y、z、m均为int型变量,则执行下面语句后的m值是()。

w=1;x=2;y=3;z=4;

m=(w

w:

x;

m=(m

m:

y;

m=(m

m:

z;

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

50.以下程序的运行结果是()。

main()

{

intm=5;

if(m++>5)cout<

elsecout<

}

A.4B.5C.6D.7

51.已知intx=0,y=1.5;执行以下程序段以后,y的值为()。

if(x!

=0)

if(x>0)y=1;

elsey=-1;

cout<

A.0B.-1C.1.5D.1

52.若有条件表达式(exp)?

a++:

b--,则以下表达式中能完全等价于表达式(exp)的是()。

A.(exp==0)B.(exp!

=0)C.(exp==1)D.(exp!

=1)

53.执行以下程序段后,变量a,b,c的值分别是()。

intx=10,y=9;

inta,b,c;

a=(--x==y++)?

--x:

++y;

b=x++;

c=y;

A.a=9,b=9,c=9B.a=8,b=8,c=10

C.a=9,b=10,c=9D.a=1,b=11,c=10

54.下面程序段的运行结果是()。

x=y=0;

while(x<5)y++,x+=y;

cout<

A.20,7B.3,6C.3,12D.8,20

55.下面程序段的运行结果是()。

intn=0;

while(n++<=2);cout<

A.2B.3C.4D.有语法错

56.下面程序段的运行结果是()。

a=1;b=2;c=1;

while(a

cout<

A.1,2,0B.2,1,0C.1,2,1D.2,1,1

57.下面程序的运行结果是()。

#include

usingnamespacestd;

main()

{

intnum=0;

while(num<=2)

{

num++;

cout<

}

}

A.1B.1C.1D.1

222

33

4

58.C语言中while和do-while循环的主要区别是()。

A.do-while的循环体至少无条件执行一次

B.while的循环控制条件比do-while的循环控制条件严格

C.do-while允许从外部转到循环体内

D.do-while的循环体不能是复合语句

59执行下列程序段以后,变量i的值是()。

inti=7;

switch(i--)

{case4:

i+=2;

case5:

i+=3;

case6:

i+=4;break;

default:

i+=10;

}

A.9B.11C.16D.13

60.在C++语言中,switch语句后一对圆括号中表达式的类型()。

A.只能是整型或实型B.只能为int类型

C.可以是整型或字符型D.可以是任何类型

61.设有程序段

intk=10;

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

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

A.while循环执行10次B.循环是无限循环

C.循环体语句一次也不执行D.循环体语句执行一次

62.以下能正确计算1×2×3×…×10的程序段是()。

A.do{i=1;s=1;B.do{i=1;s=0;

   s=s*i;s=s*i;

i++;i++;

}while(i<=10);}while(i<=10);

C.i=1;s=1;D.i=1;s=0;

do{s=s*i;do{s=s*i;

i++;i++;

}while(i<=10);}while(i<=10);

63.以下描述中正确的是()。

A.由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句

B.do-while循环由do开始,用while结束,在while(表达式)后面不能写分号

C.在do-while循环体中,一定要有能使while后面表达式的值变为零(“假”)的操作

D.do-while循环中,根据情况可以省略while

64.若有如下语句:

intx=3;do{cout<

(--x));

则上面程序段()。

A.输出的是1B.输出的是1和-2

C.输出的是3和0D.是死循环

65.以下程序段()。

x=-1;

do

{x=x*x;}

while(!

x);

A.是死循环B.循环执行二次

C.循环执行一次D.有语法错误

66.下面程序的运行结果是()。

#include

usingnamespacestd;

main()

{

inty=10;

do{y--;}while(--y);

cout<

}

A.-1B.1C.8D.0

67.执行以下程序段后,屏幕的显示结果是()。

i=10;s=0;

do

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

while(i<=10);

cout<

A.0B.10C.11D.21

68.以下for循环的执行次数是()。

for(x=0,y=0;(y=123)&&(x<4);x++)

A.是无限循环B.循环次数不定C.执行4次D.执行3次

69.下面有关for循环的正确描述是()。

A.for循环只能用于循环次数已经确定的情况

B.for循环是先执行循环体语句,后判断表达式

C.在for循环中,不能用break语句跳出循环体

D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来

70.若i为整型变量,则以下循环执行次数是()。

for(i=2;i==0;)cout<

A.无限次B.0次C.1次D.2次

71.设chari;执行下面语句后,屏幕输出结果是()。

for(i='B';i<'F';i+=2)cout<

A.BCB.BDC.CFD.DE

72.以下描述正确的是()。

A.continue语句的作用是结束整个循环的执行

B.在循环体内使用break语句或continue语句的作用相同

C.只能用continue语句来终止本次循环

D.在循环中break语句是结束整个循环的执行

73.以下正确的描述是()。

A.continue语句的作用是结束整个循环的执行

B.只能在循环体内和switch语句体内使用break语句

C.在循环体内使用break语句或continue语句的作用相同

D.从多层循环嵌套中退出时,只能使用goto语句

74.下面程序段()。

for(t=1;t<=100;t++)

{

cin>>x;

if(x<0)continue;

cout<

}

A.当x<0时整个循环结束B.x>=0时什么也不输出

C.cout函数永远也不执行D.最多允许输出100个非负整数

76.下面程序的运行结果是()。

#include

usingnamespacestd;

main()

{

inta,b;

for(a=1,b=1;a<=100;a++)

{

if(b>=20)break;

b+=3;

}

cout<

}

A.7B.8C.9D.10

77.下面程序的运行结果是()。

#include

usingnamespacestd;

main()

{

inti;

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

{

if(i%2)cout<<“*”;

elsecontinue;

cout<<“#”;

}

cout<<“$”<

}

A.*#*#*#$B.#*#*#*$C.*#*#$D.#*#*$

78.下面程序的运行结果是()。

#include

usingnamespacestd;

main()

{

inti,j,a=0;

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

{

for(j=0;j<4;j++)

{

if(j%2)break;

a++;

}

a++;

}

cout<

}

A.4B.5C.6D.7

79.以下for循环的执行次数是()。

for(i=4;i!

=1;i--)cout<

A.2次B.3次C.4次D.循环次数不定

80.循环体至少被执行一次的循环语句为()。

A.while循环B.do-while循环C.for循环D.任一循环

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

A.整型常量B.整型表达式

C.整型常量或整型表达式D.任何类型的表达式

82.在C++语言中,一维数组的定义方式为:

类型说明符数组名[表达式],这个表达式的类型可以是:

()。

A.常量表达式B.整型表达式C.整型常量或整型表达式D.整型常量

83.若有说明:

inta[10];则对a数组元素的正确引用是() 。

A.a[10]B.a[3.5]C.a(5)D.a[10-10]

84.以下能对一维数组a进行正确初始化的语句是()。

A.inta[10]=(0,0,0,0,0);B.inta[10]={10*1};

C.inta[]=0;

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

当前位置:首页 > 表格模板 > 调查报告

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

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