27. Turbo C中, 占用内存空间最大的是( )。
A)char B)int C)double D)float
28. Turbo C中, 每个signed short int 型数据占用的内存空间为( )字节。 A)2个 B)4个 C)8 个 D)1个
29.下列关于C语言程序的叙述错误的是( )。
A) 一个C语言程序由一个或多个函数组成 B) 注释内容必须放在/*和*/之间 C) 编译时注释部分的错误会被发现
D) 可以在“{}”内写若干语句,构成复合语
句
30. 若已定义: int x=100; 则正确的赋值表达式是( )
A)x=?A? B)x%=0.3 C)x=x+08 D)x=”abc”
31. 若已定义:int a=3, b=2, c=1; 则表达式(float)(a+b)/(c+a)的值是( ) A)1 B)1.25 C)8 D)3.0
32. 若已定义; char c=?E?;int a=9; float x=5; 则表达式c/x-a的值是( ) [已知?A?的ASCII码值为65]
A)13.8 B)4 C)5 D)4.8
33. 以下程序段是运行结果是() int m=65 ,n=66 ; char k= ?c? ;
printf (“%c-%c-%d \\n”,m,n,k); (注;字母‘A’的ASCII值为65 )
2
C语言补充材料(2014.6)
A) 6566C B) A-B-67
C) 65-66-C D) AB67
34. 下列叙述错误的是 ( )。
A) 程序中算术表达式的书写形式与数学公式完全相同。
B) 整型与字符型变量混合运算的结果是整型 。
C) 赋值运算符的结合方向为“自右向左”。 D) 自增与自减运算符可以用于float型变量。
二、选择结构、循环结构
35. 结构化程序设计的3种基本结构是顺序结构、( )和循环结构。
A)递归结构 B)嵌套结构 C)选择结构 D)逻辑结构
36. 以下程序的运行结果是( )。 #include void main()
{ int a=4, b=3, c=2, d=1; if(a>b>c)
printf(“%d\\n”, d); else if(c-1>=d)
printf(“%d\\n”, d+1); else
printf(“%d\\n”, d+2); }
A)1 B)3 C)2 D)4
37. 若已定义int k, a,b,c ;则语句()与k=a>b?b:c语句的功能等价。 A) if (a>b) k=b ; B) if (k==a) k=b; else k=c;
C) if(a>b) k=b;
else k=c ;
D) if (a>b) k=a; else k=b;
38. 以下程序段,( )。 int a=0; do
{++a;
}while(1);
A) 循环体执行2次 B) 有语法错误 C) 是无限循环
D) 循环体执行1次
39. 以下程序段执行后变量a的值为( )。 int i, a=0;
for(i=1; i<=10; i++) {if(i%2==0) continue; a++; ++a; }
A)5 B)10 C)0 D)15
40. 以下程序段中循环体的执行次数是( )。 int i=0, a=0;
for(i=i+3; i<10; i++) { if(a%3==0) break;
a++; }
A)10 B)3 C)1 D)7
41. 以下程序段执行后变量a的值为( )。 int i=0, a=0; for(; i-3; i++) a++;
A)1 B)3 C)2 D)0
42.以下程序执行时, 循环体执行了( )
# include vold main ()
{ int a=1234 ,b=0 ; while (a)
{ b=b*10+a; a=a/10 ; }
printf ( “b=%d\\n”,b); }
A 4次 B 3次 C 2次 D 无限次
43. 执行以下程序,输入99,运行结果是( )。
#include void main( )
3
{ int score;
scanf(“%d”, &score); switch(score/10) { case 10:
case 9:
printf(“A”); case 8:
printf(“B”); case 7: case 6:
printf(“C”); break; default:
printf(“D”); }
printf(“\\n”); }
A)ABC B)ABCD C)AB D)A
44、以下程序的运行结果是( )。 #include void main( ) { char c=?C?; switch(c-65) { case 0:
putchar(c+1); break; case 1: case 2: case 3:
putchar(c+2); break; default:
putchar(c+32); break; } }
[已知?A?的ASCII码值为65,?a?的ACSII码值为97]
A)D B)C C)b D)E
三、数组
45. 下列叙述正确的是( )。
A) 在定义数组时, 数组的长度可以使用整
型变量
B) 在定义数组时, 数组的长度不可以使用
整型变量
C) 数组元素的下标不能使用字符常量 D) 数组元素的下标可以使用整型变量
46. 以下程序段执行后,a[4]的值为( )。 int a[8]={15,9,23,32,11};
a[4]=a[3]+a[2]+a[1]*a[6]-a[7]; A)64 B)32 C)55 D)63
47. 若已定义:int a[6]={1,2,3,4,5,6}; char c=?b?;表达式值为3的是( )。 A)a[3] B)a[?d?-?c?] C)a[c] D)a[?d?-c]
48. 若已定义: int s[4][3]={{1,6},{1}, {2,8,4},{7,3,5}}; 则s[3][1]的值是( )。 A)3 B) 7 C)2 D)8
49. 若已定义: int a[4][3]; 假设元素a[0][0]在存储空间中的位置序号为1,。 则元素a[2][2]的位置序号应是( )。 A)10 B)7 C)9 D)8
50. 以下程序段的运行结果是( )。 int a[10]={1,1,1,1,1,1,1,1,1,1,1,1,1}, i; for(i=1; i<=5; i++) a[i-1]=a[i-1]-1; for(i=0; i<10; i++)
printf(”=”, a[i]); A) 0 0 0 0 0 0 0 0 0 0 B) 1 1 1 1 1 0 0 0 0 0 C) 1 1 1 1 1 1 1 1 1 1 D) 0 0 0 0 0 1 1 1 1 1
51. 以下程序段执行后s的值是( )。 int a[3][4]={1,2,3,4,1,2,3,4,1,2,3,4}; int i, j, s=1;
for(i=0; i<3; i++)
for(j=0; j
s*=a[i][j];
A)16 B)12 C)288 D)144
52. 以下程序段的运行结果是( )。 char a[5]={65,?B?,67,68,69}, I; for(i=4; i>=0; i-=2)
4