问题
填空题
以下程序的输出结果是______。
int fun(int*x,int n)
if(n==0)
return x[0];
else return x[0]+fun(x+1,n-1);
main()
int a[]=1,2,3,4,5,6,7;
printf("%d\n",fun(a,3));
答案
参考答案:J
解析: 实参中a将数组元素的首地址传递给形参x,将3传递给形参n,调用函数fun(),当n=3时不满足if语句条件,执行else语句,递归调用函数fun(),改变x[0]的值。直到满足if条件把x[0]值返回,最后输出。