c语言程序设计期末复习题库

时间:2022-11-24 16:33:26 作者:壹号 字数:6240字

第二章 基本数据类型及运算

一、选择题

1. 若以下选项中的变量已正确定义,则正确的赋值语句是 。

A) x1=26.8%3; B) 1+2=x2; C) x3=0x12; D) x4=1+2=3; 答案:C

2. 设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面两位,并将第三位四舍五入的是 。

A) x=x*100+0.5/100.0 B) x=(x*100+0.5)/100.0 C) x=(int)(x*100+0.5)/100.0 D) x=(x/100+0.5)*100.0 答案:C

3. 下列C语言中运算对象必须是整型的运算符是 。

A) %= B) / C) = D) *= 答案:A

4. 若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是 。

A) 0 B) 0.5 C) 1 D) 2 答案:A

5. 设x和y均为int型变量,则以下语句:x+=y; y=x-y; x-=y; 的功能是 。

A) 把x和y按从大到小排列 B) 把x和y按从小到大排列 C) 无确定结果 D) 交换x和y中的值 答案:D

6. 下列变量定义中合法的是 。

A)short_a=1-.le-1; B)double b=1+5e2.5; C)long do=0xfdaL; D)float 2_and=1-e-3; 答案:A

7. 以下4个选项中,不能被看作是一条语句的是 。

A) {;} B) a=0,b=0,c=0;

C) if (a>0); D) if (b==0)m=1;n=2; 答案:D

8. 设x=1,y=-1,下列表达式中解为8的是 。

A)x&y B)~x│x C)x^x D)x<<=3 答案:D

9. 在C语言中不合法的整数是 。

A)20 B)0x4001 C)08 D)0x12ed 答案: C

10. 以下选项中不正确的实型常量是

A)2.607E-1 B)0.8103e0.2 C)-77.77 D)456e –2 答案:B)

11.若变量已正确定义并赋值,符合C语言语法的表达式是

A)a=a+7 B)a=7+b+c,a++ C)int(12.3%4) D)a=a+7=c+b 答案:B)

12.以下十六进制数中不合法的是

A)oxff B)0Xabc C)0x11 D)0x19

答案:A)

13. 设int i=2,j=3,k=4,a=4,b=5,c=3;,则执行表达式(a=ik)&&(c=i,j,k)后,c值是 。

A)0 B)1 C)2 D)3 答案:D

14. 下列程序的运行结果是 。

# include “stdio.h” void main( ) { int i=23; do{++i;} while(i);

printf(“%d”,i); }

A)23 B)24 C)死循环 D)无任何结果 答案:C

15.设int a=3,b=4,c=5;,下列表达式的值不为1的是 。

A)a+b>c&&b==c B)a||b+c&&b-c C)!(a>b)&&!c||1 D)!(a+b)+c-1&&b+c/2 答案:A

16.下列不合法的常量是: 。

(1)’?’ (2)’abc’ (3)”Turbo c” (4)’\0x32’ (5)’\123’ (6)’’’’ (7)”△” (8)’△’ (9)”\\\” (10)’’a’’’ (11)’\\’ (12)’\0123’(13)’\xaf’ (14)’王’ (15)”李为民”

(16)”\xaif” 答案:(2),(12),(14),(16)

17. 下列运算符中,结合方向为自左向右的是( )。

(A)?: (B), (C)+ = (D)+ + 答案:(B)

18. 若有float x;则sizeof (x)和sizeof (float)两种描述( )。

(A)都正确 (B)都不正确 (C)前者正确 (D)后者正确 答案:(A)

19. 有整型变量x,单精度变量y=5.5,表达式x=(float)(y*3+((int)y)%4)执行后,x的值为( )。

(A)17 (B)17.500000 (C)17.5 (D)16 答案:(A)

20. 若给定条件表达式(M)?(a++):(a--),则其中表达式(M) 。

A.和(M==0)等价 B.和(M==1)等价 C.和(M!=0)等价 D.和(M!=1)等价 答案:C

21. 已知float x=1,y;则y=++x*++x的结果是 。

A.y=9 B.y=6 C.y=1 D.表达式是错误的 答案:D

22. 以下程序的输出结果是 。

short i=65535; printf (

A.65535 B.0 C.语法错误,无输出结果 D.-1 答案:D

23.有变量说明语句int a,b ,c;,顺序执行下面语句: a=b=c=1;

++a||++b&&++c;

那么,变量b的值应是( )

A.2 B.1 C.0 D.3 答案:B

24. 有变量说明int a=3;,则表达式a<1&&--a>1的运算结果和a的值应该是( )

A.0和2 B.0和3 C.1和2 D.1和3 答案:B

25. 以下程序的输出为 。

#include void main( ) {

double x=213.82631; printf(}

A.213.82 B.21.38e+01 C.2.14e+02 D.-2.14e2 答案:C

26. 下列关于单目运算符+ +、- -的叙述中正确的是 。

A)它们的运算对象可以是任何变量和常量

…… 此处隐藏914字 ……

38. 语句“printf (”的输出结果是 。

A)无输出 B)结果不确定 C)-1 D)1 答案:D

1 1

39. 设a=2、b=3、c=4,则表达式a+b>c&&b= =c&&a||b+c&&b+c的值为 。

A)5 B)8 C)0 D)1 答案:D

40. 执行语句scanf (“%c%c%c”,&c1,&c2,&c3),输入abc时,变量c1、c2、c3的值分别为 。

A)'a', 'b', 'c' B)'a','b', '' C)'a', '', 'b' D)'a','','c' 答案:A