C. 一对花括号\之间 D. 一对方框号\之间 12. 构成C源程序的基本单位是( )。 A. 语句 B. 变量 C. 运算符 D. 函数 13. 以下叙述中正确的是( )。
A. C源程序中注释部分可以出现在程序中任意合适的地方 B. 一对花括号\只能作为函数体的定界符 C. C源程序编译时注释部分的错误将被发现
D. 构成C源程序的基本单位是函数,所有函数名都可以由用户命名
二、语法基础
14. C语言的下列运算符中,优先级最高的运算符是( )。 A. ++ B. += C. || D. != 15. ( )为正确的用户标识符。 A. Struct B. 5f C. _f0.6 D. _for 16. C语言基本数据类型包括( )。 A. 整型、实型、逻辑型 B. 整型、实型、字符型 C. 整型、字符型、逻辑型 D. 整型、实型、字符串型 17. ( )为合法的常量。 A. 52686L B. E-7 C. 1.2E-2.1 D. 'E12' 18. ( )为正确的变量名。 A. -k15 B. Int C. k_5 D. k.jeep 19. ( )为正确的字符常量。 A. ''\\\\'' B. \ C. \ D. 'M' 20. ( )为非法的字符串常量。 A. \ B. \ C. 'efg' D. \21. C语言整型数据在内存中的代码是用( )表示的。 A. 原码 B. 反码 C. 补码 D. BCD码 22. 以下选项中,合法的实型常数是( )。 A. E-3 B. .2E1 C. 1E.5 D. 1.5E 23. 下列C语言合法的数据类型关键字是( )。 A. Double B. Unsigned C. Integer D. Char 24. Turbo C中,int型数据占用的字节数( )。 A. 由用户自己定义 B. 为个字节2 C. 是任意的
D. 等于所用计算机的字长
-2-
25. A. B. C. D. 26. A. B. C. D. 27.
Turbo C中,基本数据类型存储空间长度的排列顺序是( )。 char 字符常量用一对单撇号' '作为单个字符的定界符 字符常量和字符串常量一样,都是用双引号括起来 字符常量存储时,自动在字符后加一个字符结束符号'\\0' 字符常量和字符串常量所分配的内存空间大小是一样的 已知'A'的ASCII码的十进制值为65,'0'的ASCII码的十进制值为48,则以下程序运行结果是( )。 main( ) { char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf(\ } A. 67,D B. C,D C. C,68 D. 67,68 28. 若有定义 int m=6; 则正确的赋值表达式是( )。 A. m*7 B. m*5=8 C. m-=m*6 D. double(-m) 29. 语句 k=(m=5,n=++m); 运行之后,变量k、m、n的值依次为( )。 A. 5,5,6 B. 5,6,5 C. 6,6,5 D. 6,6,6 30. 语句 x=5%4+(4/5); 运行之后,整型变量x的值为( )。 A. 1 B. 2 C. 3 D. 0 31. ( )语句符合C语言语法。 A. float z=28,int x,y=18; B. int x=25,y=25,z=25; C. int x=25:y=25:z=25; D. int x+y=z; 32. 若有定义 int a,x; 则语句 a=(x=8,x+8); 运行后,变量a、x的值依次为( )。 A. 16, 8 B. 8, 8 C. 16, 16 D. 8, 16 33. 若变量 m, n, t已定义且赋予初值,则正确的表达式是( )。 A. m=m+1=t-n B. m=6+n+t,m++ C. m=m\\2 D. m=int(5.6%4) 34. 若有定义:int a,b; float x,则以下不符合C语言语法的表达式是( )。 A. x%7 B. x/=a-b C. a=b=2 D. x=(float)a/b 35. 若有定义:int m=4,n=5;float k;,则以下符合C语言语法的表达式是( )。 A. (m+n)*=k B. m=(n==5) C. k=float(n)/m D. n%2.5 -3- 36. 若有定义:int a=6; 则语句 a*=a-=a/=3; 运行后,a的值是( )。 A. 10 B. 0 C. 34 D. 24 37. 下面关于C语言变量的叙述中,错误的是( )。 A. 可以用define关键字定义变量 B. 变量名用大小写字母是有区别的 C. C语言允许不同基本类型的变量之间进行混合运算 D. C语言中要求对变量作强制定义的主要理由是:便于确定类型和分配空间 38. 若有定义:int a=5,b=2; 则表达式b= (a!=5)的值为( )。 A. 5 B. 0 C. 3 D. 2 39. 逗号表达式 (a=15,a*4),a+15 的值为( )。 A. 15 B. 30 C. 75 D. 60 40. 下列语句中,符合C语言语法的赋值语句是( )。 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; 41. ( )是正确的叙述。 A. (int)5.0/6 与 5/6 等价 B. 'G' 与\等价 C. 5/6 与 5.0/6.0 等价 D. ++3与4 等价 42. 下面叙述中,错误的是( )。 A. C语言中的表达式求值,是按其运算符的优先级先高后低的次序进行 B. 自增与自减运算符的结合方向为“自右至左” C. 关系运算符的优先级低于算术运算符 D. C语言算术运算符不包含模运算符“%” 43. ( )是正确的叙述。 A. 表达式 \是合法的 B. 若变量x, y为整型,则 (a+b)++是合法的 C. 强制类型转换运算的优先级高于算术运算 D. 表达式 'm' * 'n' 是不合法的 44. 若有定义 int i=1,j=9; 则表达式 (++j)*(i--) 的值为( )。 A. 0 B. 10 C. 9 D. 8 45. 设整型变量x为7,使整型变量y不为2的表达式是( )。 A. y=x%3 B. y = x/3 C. y =(++x)/3 D. y=8-(--x) 46. 若已定义 int a=3,b=2,c=1; 则语句 ++a||++b&&++c; 运行后b的值为(A. 0 B. 3 C. 1 D. 2 47. 若有定义:int i=5,j=4;则语句 i/=++j; 运行后i的值为( )。 A. 10 B. 1 C. 1.25 D. 0 48. 若已定义:int a=2,b=2; 则表达式 (a+(b++), b) 的值是( )。 A. 2 B. 3 C. 4 D. 6 )。 -4- 49. 若有定义:int r,x=245; 则语句 r=x/100%9; 运行后r的值为( )。 A. 2 B. 5 C. 0 D. 27 50. 若已定义:int i=6,t; 则语句 t=3+(--i); 运行后t的值为( )。 A. 9 B. 7 C. 8 D. 5 51. C语言的 % 运算符按运算对象的个数属( )。 A. 单目运算符 B. 四目运算符 C. 双目运算符 D. 三目运算符 52. 若已定义:int a=5,b=9,c=6; 则语句 b++; ++c; a=b-c; 运行后a的值为( )。 A. 5 B. 3 C. 2 D. 4 53. 以下程序运行时,若从键盘输入5,则输出结果是( )。 main() { int a; scanf(\ if(a++>5) printf(\ else printf(\} A. 7 B. 4 C. 5 D. 6 54. 若已定义 float x; 要从键盘输入数据36.582给变量x,则应选用( )语句。 A. scanf(\ B. scanf(\C. scanf(\ D. scanf(\ 55. 若已定义 double y; 拟从键盘输入一个值赋给变量y,则正确的函数调用是( )。 A. scanf(\ B. scanf(\C. scanf(\ D. scanf(\56. 已有定义 char s; 使用scanf( )函数输入一个字符给变量s,不正确的函数调用是( )。 A. scanf(\ B. scanf(\C. scanf(\ D. scanf(\57. 函数putchar( ) 的功能是向终端输出( )。 A. 一个字符 B. 多个字符 C. 一个关系表达式 D. 一个实型变量值 58. 若已定义 int a=11; 执行以下语句后的输出结果是( )。 printf(\A. a=11, a=11, a=b B. a=11, a=13, a=b C. a=11, a=13, a=c D. a=11, a=12, a=13 59. 若有定义 int m=4321,n=123,k=21; 语句printf(\执行后的 输出结果是( )。 A. 4321432143211231231232121 B. 432112321 C. 4321+123+21 D. 432+123+021 60. 已有如下定义和输入语句, char c1,c2;int x; -5-
相关推荐: