有以下程序
int f (int
A.
return a%2;
main ( )
int s[8]=1,3,5,2,4,6),i,d=0;
for (i=0; f(s[i]; i++) d +=s[i];
print f ("%d\n",D) ;
程序运行后的输出结果是A) 9
B.11
C.19
D.21
参考答案:A
解析: 本题考核的知识点是一维数组的定义,初始化和数组中元素的引用。函数f()的作用是形参a为偶数的时候返回0,主函数中首先定义了一个长度为8的一维数组,然后给它赋初值使得s[0]=1、a[1]=3、s[2]=5、s[3]=2、s[4]=4、 s[5]=6.其他没有赋值的数组元素将自动赋值为0。 for循环中,当s[1]不为偶数的时,将s[i]相加,即当 i=3时,s[i]=2为偶数,退出循环,此时d的值为 d=s101+s[1]+s[2]=1+3+5=9,因此最后输出的d的值为9。所以,4个选项中选项A符合题意。