全国计算机等级考试C语言考试选择题部分(17)
161、有如下说明: int a[10]={0,1,2,3,4,5,6,7,8,9};
则数值不为9的表达式是____B____.
A) a[10-1] B) a[8] C) a[9]-0 D) a[9]-a[0]
162、设有数组定义:char array[]="China";则数组array所占的存储空间为____C____.
A) 4个字节 B) 5个字节
C) 6个字节 D) 7个字节
163、下面程序的输出是____B____.
#include
int m=13;
int fun2(int x, int y)
{ int m=3;
return(x*y-m);
}
void main()
{ int a=7, b=5;
printf("%d ",fun2(a,b)/m);
}
A) 1 B) 2 C) 7 D) 10
164、请读程序:
#include
f(int b[ ], int n)
{ int i, r=0;
for(i=0; i<=n; i++) r=r+b[i];
return r;
}
void main()
{
int x, a[]={ 2,3,4,5,6,7,8,9};
x=f(a, 3);
printf("%d ",x); }
上面程序的输出结果是___B_____.
A) 20 B) 14 C) 9 D) 5
165、请读程序:
#include
f(int b[ ], int n)
{ int i, r=1;
for(i=0; i<=n; i++) r=r*b[i];
return r; }
void main()
{ int x, a[]={ 2,3,4,5,6,7,8,9};
x=f(a, 3);
printf("%d ",x); }
上面程序的输出结果是___B_____.
A) 720 B) 120 C) 24 D) 6
166、请读程序:
#include
f(char s[ ])
{ int i,j;
i=0;j=0;
while( s[j]!= ’ ’) j++;
return (j-i); }
void main()
{printf("%d ",f("ABCDEF"));}
上面程序的输出结果是____B____.
A) 0 B) 6 C) 7 D) 8
167、对以下程序,正确的说法是__D______.
sub (char x,char y)
{ int z; z=x%y; return z; }
void main( )
{ int g=5,h=3,k;
k=sub(g,h);
printf("%d ",k); }
A) 实参与其对应的形参类型不一致,程序不能运行
B) 被调函数缺少数据类型说明,程序不能运行
C) 主函数中缺少对被调函数的说明语句,程序不能运行
D) 程序中没有错误,可以正常运行
168、若已定义实参数组int a[3][4]={2,4,6,8,10};,则在被调用函数f的下述定义中,对形参数组b定义正确的选项是_____B___.
A) f(int b[ ][6]) B) f(b) int b[ ][4];
C) f(int b[3][ ]); D) f(b) int b[4][5];
169、若函数调用时用数组名作为函数参数,以下叙述中,不正确的是____C____.
A) 实参与其对应的形参共占用同一段存储空间
B) 实参将其地址传递给形参,结果等同于实现了参数之间的双向值传递
C) 实参与其对应的形参分别占用不同的存储空间
D) 在调用函数中必须说明数组的大小,但在被调函数中可以使用不定尺寸数组
170、以下叙述中,不正确的是____B____.
A) 使用static float a定义的外部变量存放在内存中的静态存储区
B) 使用float b定义的外部变量存放在内存中的动态存储区
C) 使用static float c定义的内部变量存放在内存中的静态存储区
D) 使用float d定义的内部变量存放在内存中的动态存储区