试题与答案

有以下程序  int f(int a)   return a%2;   main(

题型:单项选择题

题目:

有以下程序
  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];
   printf("%d\n",d);
  
  程序运行后的输出结果是
A)9
B)11
C)19
D)21

答案:

参考答案:A

解析: 本题中循环条件为f(s[i]),即f(s[i])的值为非零时执行此循环,而这个自定义函数的即为取2的模返回,只有奇数才返回非零值,所以最后循环执行了三次,d的值为s[0],s[1],s[2]三个值的和,即为9。

试题推荐
微信公众账号搜索答案