A. 必须在主调函数中说明此数组的大小 B. 实参数组类型与形参数组类型可以不匹配 C. 在被调用函数中, 不需要考虑形参数组的大小 D. 实参数组名与形参数组名必须一致
17.关于指针概念说法不正确的
是 ( )
A. 一个指针变量只能指向同一类型变量 B. 一个变量的地址称为该变量的指针
C. 只有同一类型变量的地址才能放到指向该类型变量的指针变量之中 D. 指针变量可以由整数赋, 不能用浮点赋
18.在C语言中,以下说法中正确的
是 )
A. 实参与其对应的形参各占用独立的存储单元 B. 实参与其对应的形参占用同一个存储单元 C. 只有当实参与形参同名时才占用同一个存储单元 D. 实参占用存储单元,但形参是虚拟的,不占用存储单元 19.执行语句:for(i=1;i<=9; i++);后; 变量i的值是。 ( )
A. 10 B. 9 C. 不
定 D. 11 20.以下程序的输出结果
是。 ( ) main()
{ char ch[3][5]={\
( printf ( \}
A. 1111 B. 222 C. 111122233 D. 33
21.以下程序运行后,输出结果
是。 ( ) #define S(x) x*x main( )
{ printf(\,S(1+2)) ; }
A. 9 B. 7 C. 5 (D)6
22.下列程序的输出结果
是 ( ) main()
{ int x, y, z ; x=y=z=1 ; ++x&&++y||++z ;
printf(\ }
A.1 1 1 B. 2 2 2 C. 2 2 1 1
23.设int *p[4]; 则以下叙述中正确的
是。 ( A. p是指向包含4整型元素的一维数组的指针; B. p是指向int型数据的指针变量;
C. p是指向函数的指针, 该函数返回一个int型数据; D. 2 1 )
D. p是一个指针数组
24.若有说明语句:int a,b,c,*d=&c;,则能正确从键盘读入三个整数分别赋给变量
a、b、c的语句
是 ( )
A) scanf(\ B) scanf(\C) scanf(\ D) scanf(\
25.以下定义语句中正确的
是 ( )
A)char a='A'b='B'; B)float a=b=10.0; C)int a=10,*b=&a; D)float *a,b=&a;
26.设a=6,b=4,则表达式b*=a+3的值
为 ( ) A)3 B)18 C)27 D)36
27.有数组定义:char array[]=”Computer”;则数组array所占的存储空间为 ( )
A)7个字节 B) 8个字节 C)9个字节 D)10个字节
28.已知int a[2][3]={{1,3,5},{2,4,6}};则*(*(a+1)+2)的值是 ( )
A)6 B)3 C)5 D)4 29.有如下程序段,其输出结果
是: ( ) int a=3;
float b=15.6,f=1.5;
printf(“%d”,a+(int)b/2+(int)f%3);
A)10 B)11 C)12 D)13 30. 已知int a=5,b=7,c=3;则逻辑表达式a
A) 1 B) =0 C)3 D)4
31.若有如下程序,其输出的结果
为 ( ) main()
{ unsigned int x=3,y=7; printf(“%d\\n”,x<<3|y>>1); }
A)26 B)27) 32.有以下程序 #include
{int a=3,b=4,c=5,d; d=f(f(a,b),f(a,c)); printf(\}
程序运行后的输出结果
是 ( )
A. 10 B. 9 C. 8 7 C)15 D.
D)31 33.以下运算符中,优先级最高的运算符
是 ( ) A. = B. !=
C. *(乘号) D.
()
34.经过以下语句定义后, 表达式z+=x>y?++x:++y 的值为. ( ) int x=1,y=2,z=3;
A. 2 B. 3 C. 6 D.
5 35.下列选项中正确的语句组
是 ( )
A. char s[8]; s={\B. char *s; s={\C. char s[8]; s=\D. char *s; s=\
36.以下不正确的叙述
是 ( )
A. 在C 程序中所用的变量必须先定义后使用 B. 程序中,APH 和aph 是两个不同的变量
C. 若a 和b 类型相同, 在执行了赋值语句a=b; 后b 中的值将放入a 中,b 中的值不变
D: 当输入数值数据时, 对于整型变量只能输入整型值; 对于实型变量只能输入实型值
37.以下程序的输出结果
是 ( )