C语言,选什么,求过程。

28.以下程序的输出结果是( )。
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

第1个回答  2020-03-14
选A。数组索引从0开始,从第三个数4开始,隔一个数求和,结束条件是索引i<7(不包括第7个数),也就是说,把数组中第3个,第5个数求和,即4+6=10本回答被提问者采纳
第2个回答  2020-03-14
f(a,3,7)是一个自定义函数;使数组a中的从a[3](第四个元素)~a[6](第7个元素)下标加2后相加;a[3]+a[5],a[5]下标再加2是a[7]不在要求的范围内不加;a[6]在范围内,但是a[5]下标加等a[7],因此不加;4+6=10
for(i=m;i<n;i=i+2)//自定义函数核心
s=s+b[i];//a[m]~a[n-1]的和,每循环一次i的值加2;
综上所述,答案是(A)本回答被网友采纳
相似回答