练习题二改

更新时间:2023-09-19 15:57:01 阅读量: 小学教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

练习题二

一、选择题

1. 列四个选项中,不是C语言标识符的选项是 A.define

B. ge C. lude D. while

2.下面四个选项中,均是不合法的用户标识符的选项是 A. A B. float C. b-a D. _123

P_0 1a0 goto temp do _A int INT

3.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 A. 必须为字母 B. 必须为下划线 C. 必须为字母或下划线

D. 可以是字母,数字和下划线中任一种字符

4. 下列字符串是标识符的是

A. _HJ B. 9_student C. long D. LINE 1 5. 下列字符串是标识符的是

A. _WL B. 3_3333 C. int D. LINE 3 6. 下列字符串是标识符的是

A. INT B. 5_student C. long D. ! DF 7. 以下选项中合法的用户标识符是 A.long B. _2Test C. 3Dmax D. A.dat 8. 下列字符串不是标识符的是

A. sum B. average C. day_night D. M.D.JOHN 9. 下列字符串不是标识符的是

A. _above B. all C. _end D. # dfg 10.下列四组选项中,均不是C语言关键字的选项是 A. define B. getc C. include D. while IF char scanf go type printf case pow 11.下面四个选项中,均是C语言关键字的选项是 A. auto B. switch C. signed D. if enum typedef union struct include continue scanf type 12. C 语言提供的合法的数据类型关键字是

A. Float B.signed C.integer D.Char

13. 不是C语言提供的合法关键字的是

A. switch B. print C. case D. default 14. 在C语言提供的合法的关键字是

A.swicth B.cher C.Case D.default 15. C语言提供的合法关键字是

A. break B. print C. funiton D. end 16. C语言提供的合法关键字是

A. continue B. procedure C. begin D. append 17. 在C语言中,下列类型属于构造类型的是

A. 整型 B. 字符型 C. 实型 D. 数组类型 18. 在C语言中,下列类型属于构造类型的是

A. 空类型 B.字符型 C. 实型 D. 共用体类型 19. 在C语言中,下列类型属于构造类型的是

A. 整型 B. 指针类型 C. 实型 D. 结构体类型 20. 在C语言中,下列类型属于基本类型的是

A. 整型、实型、字符型 B. 空类型、枚举型 C. 结构体类型、实型 D. 数组类型、实型 21. 下列类型都不属于基本类型的是

A. 结构体类型和整型 B. 结构体类型、数组、指针 C. 实型 D. 空类型和枚举型 22. C语言中最简单的数据类型包括

A. 整型,实型,逻辑型 B. 整型,实型,字符型 C. 整型,字符型,逻辑型 D. 整型,实型,逻辑型,字符型 23.以下选项中属于C语言的数据类型是 A. 复数型

B.逻辑型

C.双精度型

D.集合型24. C语言中不能用来表示整常数的进制是

A. 十进制 B. 十六进制 C. 八进制 D. 二进制 25. C语言中能用来表示整常数的进制是

A. 十进制、八进制 、十六进制 B. 十二进制、十进制 C. 六进制、八进制 D. 二进制、十进制

1

26. 不属于合法的C 语言长整型常量的是 A. 5876273 B.0L

C.2E10 D. (long)5876273

27. 下面选项中,不是合法整型常量的是

A. 160

B.-0xcdg C.-01 D.-0x48a 28.在C语言中,不正确的int类型的常数是

A.32768

B.0

C.037

D.0xAF

29. 在 C 语言中,数字 029 是一个 A.八进制数

B.十六进制数 C.十进制数 D.非法数

30. C 语言中整数-8 在内存中的存储形式为 A. 1111111111111000 B. 100000000001000 C. 000000000001000

D. 1111111111110111

31. 设char ch;以下正确的赋值语句是

A. ch='123'; B. ch='\\xff'; C. ch='\\08'; (D) ch='\\'; 32. 合法的字符常量是 A. '\\h84' B. '\\84' C. 'ab'

D.'\\x43' 33. 非法的 C 语言转义字符是

A. '\\b'

B. '\\0xf' C. '\\037' D. '\\''

34. 对于 char cx=' \\039'; 语句,正确的是 A. 不合法

B.cx 的 ASCII 值是 33 C. cx 的值为四个字符

D.cx 的值为三个字符

35. 在C语言中, char型数据在内存中的存储形式是:

A. 补码 B. 反码 C. 原码 D. ASCII码 36. 下列常数中,合法的C常量是

A. -0. B. '105' C. 'AB' D. 3+5 37. 下列常数中,合法的C常量是

A. \ B. '105' C. 'Be' D. 7ff 38. 下列常数中,合法的C常量是

A. '\\n' B. e-310 C. 'DEF' D. '1234' 39. 下列常数中,不合法的C常量是

A. -0x2al B. lg3 C. '[' D. \40. 下列常数中,不合法的C常量是

A. -0x3bl B. 123e+2.3 C. '}' D. 6e+7

41.C语言中的字符常量是以( )括起来的一个字符。 A.双引号 B.单引号 C.\\……\\ D.*……* 42. 在C语言中,以下合法的字符常量是

A. '\\084' B. '\\x43' C. '\\xg4' D. \43.在C语言中,合法的字符常量是

A.'\\084' B.'\\x43' C.'ab' D.\44. 下面正确的字符常量是:

A. \ B. '\\\\'' C. 'W' D. '' 45. 在C语言中,回车换行符是

A. \\n B. \\t C. \\v D.\\b 46.C语言中的转义字符\\n的作用是

A.回车换行 B.横向跳格 C.纵向跳至本列下行 D.将光标移至本行行首47. 在C语言中,退格符是

A. \\n B. \\t C. \\v D. \\b 48. 在C语言中,反斜杠字符是

A.\\n B. \\t C. \\v D.\\\\

49.下面四个选项中,均是合法转义字符的选项是 A. '\\'' B. '\\' C. '\\018' D. '\\\\0' '\\\\' '\\017' '\\f' '101' '\\n' '\\\ 'xab' 'xlf'

50.下面四个选项中,均是不合法的转义字符的选项是 A. '\\'' B. '\\1011' C. '\\011' D. '\\a' '\\\\' '\\' '\\f' '\\101' '\\xf' '\\c' '\\}' 'xlf' 51.下列不正确的转义字符是

A.'\\\\' B.'\\\ C.'074' D.'\\0'

52. 在ASCII代码表中可以看到每一个小写字母比它相应的大写字母的ASCII码 A. 大32 B. 大64 C. 小32 D. 小1

53.英文小写字母d的ASCII码为100,英文大写字母D的ASCII码为 A. 50 B. 66

C. 52

D. 68

54.下面不正确的字符串常量是

A. 'abc' B. ''12’12''

C.”0”

D. '' ''

2

55. 以下所列的 C 语言常量中,错误的是 A.0xFF

B.1.2e0.5 C.2L

D.'\\72'

56. 若有以下说明语句: char s='\\\\\\092';

则下面哪一项是正确的.

A. 使s的值包含2个字符 B. 说明语句不合法 C. 使s的值包含6个字符 D. 使s的值包含4个字符 57. 下列符号中,可以作为变量名的是

A. +a B. 12345e C. a3B D. 5e+0 58. 下列符号中,可以作为变量名的是

A. +c B. *X C. _DAY D. next day

59.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为 A. char

60.设C语言中,一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为A. 0~255 B. 0~32767 C. 0~65535 D. 0~2147483647 61.以下选项中不属于 C 语言的类型是 A. signed short int

B. unsigned long int

C. unsigned int

62.以下定义语句中错误的是

A.int a=3,b=5; B.float x1; x2; C.char c1,c2,c3; D.double y3, y4; 63. 设d为字符变量,下列表达式不正确的是

A. d=97 B. d='a' C. d=\ D. d='g' 64. 设d为字符变量,下列表达式正确的是

A. d=678 B. d='a' C. d=\ D. d='gjkl' 65. 10+'a'+1.5-567.345/'b'的结果的数据类型是

A. long B. double C. int D. unsigned float 66. 以下结果为整数的表达式(设有int i;char c;float f;) A. i+f

B. i*c

C. c+f

D. i+c+f

67. 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为 A. int B. float C. double D. 不确定 68.若有以下定义:

char a; int b; float c; double d;

则表达式a*b+d-c值的类型为

A. float B.int C. char D. double 69. 以下不正确的语句(设有int p,q)是 A. p*=3; B. p/=q; C. p+=3; D. p&&=q; 70. 若有代数式3aebc,则不正确的C语言表达式是 A. a/b/c*e*3

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

D. a*e/c/b*3 71. 与代数式 (x*y)/(u*v) 不等价的 C 语言表达式是 A. x*y/u*v B.x*y/u/v

C.x*y/(u*v)

D. x/(u*v)*y

72. 在C语言中,要求运算数必须是整型的运算符是 A. / B. ++ C. != D. %

73.若有定义:int a=8,b=5,c;,执行语句c=a/b+0.4;后,c的值为 A. 1.4 B. 1 C. 2.0 D. 2 74.以下程序的输出结果: main( )

{int x = 10, y = 3; printf(\ }

D. long short

A.0 B.1 C.3 D. 不确定的值 75.若t为double类型,表达式t=1,t*5,t++的值是 A.1 B.6.0 C.1.0 D.2.0

76.若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是 A.1 B.2 C.2.0 D.2.5 77. 已知各变量的类型说明如下: int k,a,b;

unsigned long w= 5; double x=1.42;

则以下不符合C语言语法的表达式是:

A. x%(-3) B. w+=-2 C. k=(a=2,b=3,a+b) D. a+= a-(b=4)*(a=3) 78. 已知各变量的类型说明如下: int i=8,k,a,b; unsigned long w=5;

3

double x=1.42,y=5.2;

则以下符合C语言语法的表达式是:

A. a+=a-=(b= 4)*(a=3) B. a=a*3=2 C. x%(-3) D. y=f1oat(i) 79. 以下合法的赋值语句是 A.x=y=100

B.d--

C.x+y

D.c=int(a+b)

80. 以下符合C语言语法的赋值表达式是

A. d=9+e+f=d+9 B. d=(9+e,f=d+9) C. d=9+e,e++,d+9 D. d=9+e++=d+7 81. 下列语句中,符合语法的赋值语句是 A. a=7+b+c=a+7 ; B. a=7+b++=a+7; C. a=(7+b,b++,a+7);

D. a=7+b,c=a+7;

82. 设x 、y均为f1oat型变量,则以下不合法的赋值语句是 A. ++x; B. y=(x%2)/10; C. x*=y+8; D. x=y=0; 83.下面合法的赋值语句是

A. x+y=2002; B. ch=\C. x=(a+b)++; D.x=y=0316; 84.以下非法的赋值语句是

A. n=(i=2,++i); B. j++; C. ++(i+1); D. x=j>0; 85.下列可作为C语言赋值语句的是

A. x=3,y=5 B. a=b=6 C. i--; D. y=int(x); 86. 以下使i的运算结果为4的表达式是 A. int i=0,j=0; B. int i=1,j=0; (i=3,(j++)+i); j=i=((i=3)*2); C. int i=0,j=1; D. int i=1,j=1; (j==1)?(i=1):(i=3) i+=j+=2;

87. 设n=10,i=4,则赋值运算n%=i+1执行后,n的值是 A. 0

B. 3

C.2

D. 1

88. 逗号表达式(a=3*5,a*4),a+15的值为__①___,a的值为____②___ ①A. 15 B. 60 C. 30 D. 不确定 ②A. 60 B. 30 C. 15 D. 90

89. 如果a=1,b=2,c=3,d=4,则条件表达式a<b?a:c<d?c:d的值为 A. 1

B. 2

C. 3

D. 4

90. 若 int k=7,x=12; 则能使值为 3 的表达式是 A. x%=(k%=5) B. x%=(k-k%5) C. x%=k-k%5

D. (x%=k)-(k%=5)

91. 假定 x 和 y 为 double 型,则表达式 x=2 , y=x+3/2 的值是 A.3.500000

B.3

C. 2.000000

D.3.000000

92. 设以下变量均为 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)

93. 下面哪个表达式的值为4

A. 11/3 B. 11.0/3 C. (float)11/3 D. (int)(11.0/3+0.5) 94.设a和b均为double型常量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是 A. 6.500000 B. 6 C. 5.500000 D. 6.000000 95. 表达式(int)2.1416的值为

A. 2 B. 2.1 C. 0 D. 3 96. 表达式(double)(20/3)的值为

A. 6 B. 6.0 C. 2 D. 3 97.下面程序的输出是 main()

{ unsigned a=32768; printf(\ }

A.a=32768 B.a=32767 C.a=-32767 D.a=-1 98. 若x,i,j和k都是int型变量,则执行下面表达式后x的值为 x=(i=4,j=16,k=32) A. 4 B. 16 C. 32 D. 52

99. 假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是: A. 7 B. 8 C. 6 D. 2

100. 已知字母A的ASCII码为十进制65,且c2为字符型,则执行语句c2='A'+'6'-'3';后,c2的值为 A. D B. 68 C. 不确定的值 D. C

101.若以下变量均是整型,且num=sum=7;则执行表达式sum=num++,sum++,++num后sum的值为

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

102. 若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是 A. 2.500000 B. 2.7500OO c 3.500000 D. 0.000000。

103. 若x=3,y=z=4,则下列表达式的值分别为

4

(1) (z>=y>=x)? 1:0 (2) z>=y&&y>=x A. 0 1 B. 1 1 C. 0 0 D. 1 0 104. 若x=3,y=z=4,则下列表达式的值分别为 (1) (z>=y>=x)? 1:0 (2) y+=z,x*=y A. 0 24 B. 1 8 C. 0 8 D. 1 12 105. 若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值为 A. 1 B. 2 C. 2.0 D. 2.5 106. sizeof(float)是:

A. 一个双精度型表达式 B. 一个整型表达式 C. 一种函数调用 D. 一个不合法的表达式

107. x,y,z均为int型变量,则执行语句x=(y=(z=10)+5)-5;后,x 、y 和Z的值是: A. x=10 B. x=10 C. x=10 D. x=10

y=15 y=10 y=10 y=5 z=10 z=10 z=15 z=10

108. 语句int i=3;k=(i++)+(i++)+(i++);执行过后k的值为__________,i的值为__________。A. 9,6 B. 12,5 C. 18,6 D. 15,5

109. 如果int i=3,则k=(i++)+(++i)+(i++)执行过后k的值为_________,i的值为__________。A. 12,6 B. 12,5 C. 18,6 D. 15,5

110. 如果int i=3,则k=(++i)+(++i)+(i++)执行过后k的值为_________,i的值为__________。A. 15,6 B. 12,5 C. 18,6 D. 15,5

111. 如果int i=3,则k=(++i)+(++i)+(++i)执行过后k的值为_________,i的值为__________。A. 9,6 B.12,5 C. 18,6 D. 15,5 112. 写出下面程序的输出结果 main() { int i,j;

i=16;j=(i++)+i;printf(\ i=15;printf(\

A. 32 16 15 B. 33 15 15 C. 33 15 16 D. 34 16 15

113. 如果int i=3,则printf(\的结果为____________,i的值为__________。 A. -3,4 B. -4,4 C. -4,3 D. -3,3 114. 如果int i=3;int j=4,则k=i++ +j执行之后k,i和j的值分别为 A. 7,3,4 B. 8,3,5 C. 7,4,4 D. 8,4,5

115. 逻辑运算符两侧运算对象的数据类型是

A.只能是0或1 B. 只能是0或非0正数 C. 只能是整型或字符型数据 D. 可以是任何类型的数据 116. 以下不正确的叙述是

A. 在C程序中,逗号运算符的优先级最低 B. 在C程序中,APH和aph是两个不同的变量

C. 若a和b类型相同,计算a=b后b中的值将放入a中,而b中的值不变 D. 整型数据和浮点型数据不能放在一起混合运算 117. 在以下一组运算符中,优先级最高的运算符是 A. <= B. = C. % D. && 118. 下列运算符中优先级最高的是 A. > B. + C. && D. != 119. 以下关于运算符优先级的描述中,正确的是

A. !(逻辑非)>算术运算>关系运算>&&(逻辑与)>||(逻辑或)>赋值运算 B. &&(逻辑与)>算术运算>关系运算>赋值运算

C. 关系运算>算术运算>&&(逻辑与)>||(逻辑或)>赋值运算 D. 赋值运算>算术运算>关系运算>&&(逻辑与)>||(逻辑或) 120. 为表示关系x>=y>=z,应使用C语言表达式

A. (y<=x)&&(y>=z) B. (x>=y)AND(y>=z) C. (x>=y>=z) D. (x>=y)&(y>=z) 121.表示关系x<=y<=z的c语言表达式为

A. (X<=Y)&&(Y<=Z) B. (X<=Y)AND(Y<=Z) C. (X<=Y<=Z) D. (X<=Y)&(Y<=Z) 122.设x,y 和z是int型变量,且x = 3,y= 4,z= 5,则下面表达式中值为0的是 A. 'y'&&'y' B. x < =y C. x||y+z&&y-z D. !(x

A. (x<=-10)||(x>=-5) && (x<=0)||(x>=100) B. (x>=-10)&&(x<=-5) || (x>=0)&&(x<=100) (C) (x>=-10)&&(x<=-5) && (x>=0)&&(x<=100) (D) (x<=-10)||(x>=-5) && (x<=0)||(x>=100) 124. 若已知a=10,b=20,则表达式! a

A. 10 B. 20 C. 1 (D) 0 125. 判断字符型变量ch为大写字母的表达式是

A. 'A'<= ch <='Z' B. (ch>='A')&(ch<='Z') C. (ch>='A')&&(ch<='Z') D. (ch>='A')AND(ch<='Z')

5

本文来源:https://www.bwwdw.com/article/b0ph.html

Top