以下程序的输出结果是( )。 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[8]);i++)d

admin2012-12-03  19

问题 以下程序的输出结果是(    )。
    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[8]);i++)d+=s
     printf("%d\n",d);
    }

选项 A、9
B、11
C、19
D、21

答案A

解析 在程序中当i=0时,s[0]=1,f(s[0])为1,执行d+=s[0],d的值为1,i++也变为1。当i=1时,s[1]=3,f(s[1])为1,也为非0,继续执行后面的表达式,此时d的值为1+3=4.继续着i++变为2,接着执行for循环,可知for循环的目的是把s数组中的奇数相加,因此最后d的值为1+3+5为9,故选择A选项。
转载请注明原文地址:https://kaotiyun.com/show/KuPp777K
0

最新回复(0)