有关递归调用的问题,?请输出下面程序的运行结果,并解释

来源:百度知道 编辑:UC知道 时间:2024/07/08 14:29:09
#include<stdio.h>

int fun(int t[],int n)
{
int m;
if(n==1)
return t[0];
if(n%3==0) {m=fun(t,n-1);return m;}

}
void main()
{
int t[10]= {11,2,9,5,3,7,3,8,9,10};
printf("%d\n",fun(t,10));
}
程序肯定没问题,而且能正确运行的!

程序有问题。得不出结果。

c语言地址管理很弱,"正确运行"是你的错觉

程序明显有问题,你的fun不是必定有返回值的!
你传的t,10 明显就是个例外,即不等于1,也不能被3整除。写个else吧。