C语言程序设计(青岛职业技术学院)智慧树知到章节测试答案


第二章测试

1、已知定义整形变量a,b,c的值分别是2、3、4,运算表达式a*=16+(b++)-(++c)以后,a值为()

A、31

B、30

C、29

D、28

正确答案:D

2、在C语言中,要求参加运算的数必须是整数的运算符是()。

A、++

B、C、!

D、%

正确答案:D

3、合法的c标识符是()。

A、5dm

B、a>b

C、h1

D、$s

正确答案:C

4、执行下列程序后,显示的结果是()main(){inta;printf(“%d”,(a=3*5,a*4,a+5));}

A、65

B、20

C、15

D、10

正确答案:B

5、执行下列程序中的输出语句后,x的值是()。main(){intx;printf(“%d”,(x=4*5,x*2,x+20));}

A、20

B、40

C、60

D、80

正确答案:A

6、判断:表达式1/4+2.75的值是3。

A、正确

B、错误

正确答案:B

7、下列转义字符不正确的是()。

A、'/'

B、’’

C、’+’

D、’-’

正确答案:B

8、对于intn=3;执行n+=n-=n*n;后n的值是9。

A、正确

B、错误

正确答案:B

9、在C语言中8.9e1.2是不正确的实型常量。

A、正确

B、错误

正确答案:A

10、对任一变量一旦被指定为某一确定类型后,该变量在程序运行时所占存储空间的多少和所能参加的运算类型便已确定了。

A、正确

B、错误

正确答案:A

11、若x为整型变量、j为实型变量,当执行语句:x=(int)j;后,j也变为整型变量。

A、正确

B、错误

正确答案:B

12、“!”的优先级可以比“/”高。

A、正确

B、错误

正确答案:A

13、两个char型数据相加,其结果为char型。

A、正确

B、错误

正确答案:B

14、若有inti=10,j=2;则执行完i*=j+8;后ⅰ的值为28。

A、正确

B、错误

正确答案:B

15、在C程序中,%是只能用于整数运算的运算符。

A、正确

B、错误

正确答案:A

16、以下各数均不是合法的八进制数:256、03A2、-0127。

A、正确

B、错误

正确答案:B

17、C语言程序中,任何英语单词均可以作标识符。

A、正确

B、错误

正确答案:B

18、若有宏定义:#defineM(x,y,z)x*y+z,则宏引用M(2+3,4+5,6+7)通过宏展开后的表达式应为(2+3)*(4+5)+6+7。

A、正确

B、错误

正确答案:B

19、C语言中不区分大小写英文字母。

A、正确

B、错误

正确答案:B

20、程序中的变量代表内存中的一个存储单元,它的值不可以随时修改。

A、正确

B、错误

正确答案:B

21、0x173是正确的十六进制常数。

A、正确

B、错误

正确答案:A

22、逻辑表达式-5&&!8的值为1。

A、正确

B、错误

正确答案:B

23、下面程序的输出是________#include<stdio.h>intmain(){intk=11;printf("k=%d,k=%o,k=%x\n",k,k,k);return1;}

A、k=11,k=12,k=11

B、k=11,k=13,k=13

C、k=11,k=013,k=0xb

D、k=11,k=13,k=b

正确答案:D

24、在下列选项中,不正确的赋值语句是_______.

A、++t;

B、n1=(n2=(n3=0));

C、k=i=j;

D、a=b+c=1;

正确答案:D

25、下面程序的输出的是_________.#include<stdio.h>voidmain(){intx=10,y=3;printf("%d\n",y=x/y);}

A、0

B、1

C、3

D、不确定的值

正确答案:C

26、已知字母A的ASCII码为十进制的65,下面程序的输出是_________.#include<stdio.h>voidmain(){charch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}

A、67,D

B、B,C

C、C,D

D、不确定的值

正确答案:A

27、为表示关系x≥y≥z,应使用C语言表达式____.

A、(x>=y)&&(y>=z)

B、(x>=y)AND(y>=z)

C、(x>=y>=z)

D、(x>=y)&(y>=z)

正确答案:A

28、下面程序的输出结果是_______.#include<stdio.h>voidmain(){inta=-1,b=4,k;k=(++a<=0)&&(b--<=0);printf("%d,%d,%d\n",k,a,b);}

A、1,1,2

B、1,0,3

C、0,1,2

D、0,0,3

正确答案:D

29、若有以下定义和语句:inta=010,b=0x10,c=10;printf("%d,%d,%d\n",a,b,c);则输出结果是________.

A、10,10,10

B、8,16,10

C、8,10,10

D、8,8,10

正确答案:B

30、已知有double型变量x=2.5,y=4.7,整型变量a=7,则表达式x+a%3*(int)(x+y)%2/4的值是________.

A、2.4

B、2.5

C、2.75

D、0

正确答案:B

31、假定w、x、y、z、m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4;m=(w<x)?w:x;m=(m<y)?m:y;m=(m<z)?m:z;则该程序段执行后,m的值是_______.假定w、x、y、z、m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4;m=(w<x)?w:x;m=(m<y)?m:y;m=(m<z)?m:z;则该程序段执行后,m的值是_______.

A、4

B、3

C、2

D、1

正确答案:D

32、有以下程序,其中k的初值为八进制数#include<stdio.h>main(){intk=011;printf("%d\n",k++);}程序运行后的输出结果是________

A、12

B、11

C、10

D、9

正确答案:D

33、有以下程序#include#defineSUB(a)(a)-(a)main(){inta=2,b=3,c=5,d;d=SUB(a+b)*c;printf("%d\n",d);}程序运行后的输出结果是_______

A、0

B、-12

C、-20

D、10

正确答案:C

34、有以下定义语句,编译时会出现编译错误的是_______

A、chara=’a’;

B、chara=’\n’;

C、chara=’aa’;

D、chara=’\x2d’

正确答案:C

35、以下选项中,不正确的C语言浮点型常量是_______

A、160.

B、0.12

C、2e4.2

D、0.0

正确答案:C

36、以下选项中,_______是不正确的C语言字符型常量。

A、'a'

B、'\x41'

C、'\101'

D、"a"

正确答案:D

37、以下合法的标识符是_______。

A、int

B、_a12

C、3ce

D、stu#

正确答案:B

38、已知intx=023,表达式++x的值是_______。

A、17

B、18

C、19

D、20

正确答案:D

39、已知intx=10,表达式x+=x-=x-x的值是_______。

A、10

B、40

C、30

D、20

正确答案:D

40、在C语言中,字符型数据在计算机内存中,以字符的_______形式存储。

A、原码

B、反码

C、ASCII码

D、BCD码

正确答案:C

41、若变量x、i、j和k都是int型变量,则计算下面表达式后,x的值是_______。x=(i=4,j=16,k=32)

A、4

B、16

C、32

D、52

正确答案:C

42、下列不正确的转义字符是_______。

A、'\\'

B、'\''

C、'074'

D、'\0'

正确答案:C

43、A、a/b/c*e*3

B、3*a*e/b/c

C、3*a*e/b*c

D、a*e/c/b*3

正确答案:C

44、要为字符型变量a赋初值,下列语句中哪一个是正确的_______。

A、chara="3";

B、chara=‘3’;

C、chara=%;

D、chara=*;

正确答案:B

45、字符串"ABC"在内存占用的字节数是_______。

A、3

B、4

C、6

D、8

正确答案:B

46、若有说明语句:charc='\72';则变量c在内存占用的字节数是_______。

A、1

B、2

C、3

D、4

正确答案:A

47、C语言中,要求运算对象只能为整数的运算符是_______。

A、%

B、/

C、>

D、*

正确答案:A

48、若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是_______。

A、1

B、2

C、2.0

D、2.5

正确答案:C

49、sizeof(double)的结果值是_______。

A、8

B、4

C、2

D、出错

正确答案:A

50、以下用户标识符中,合法的是_______。

A、int

B、nit

C、123

D、a+b

正确答案:B

51、表达式18/4*sqrt(4.0)/8值的数据类型是_______。

A、int

B、float

C、double

D、不确定

正确答案:C