以下程序的输出结果是
f(int b[],int m,int n)
int i,s=0;
for(i=m;i<n;i=i+2)s=s+b[i];
return s;
main()
int x,a[]=1,2,3,4,5,6,7,8,9;
x=f(a,3,7);
printf(“%d\n”,x);
A.10
B.18
C.8
D.15
参考答案:A
解析:在main()函数中定义了一个变量x,以及一个有9个元素的数组a,并且每个元素分别赋初值为1、2、3、4、5、6、7、8和9。执行函数调用f(a,3,7),把a的首地址赋给形参b,把3和7分别赋给形参m和n。在f()函数中,for循环执行了2次:第一次,i的值为3,相当于执行了语句“s=s+b[3],b[3]的值就是a[3]的值4,故s的值变为4;第二次,i值为5,相当于执行了语句“s=s+b[5];”,b[5]的值6,故s的值变为10。把s作为函数值返回并赋值给x。