#include
int Monkey(int n, int x)
{
if(n==10)
return 1;
else
x=(Monkey(n+1)+1)*2;
return x;
}
int main()
{
int a,b,sum;
printf("Input days n:");
scanf("%d",&a);
sum=Monkey(a,b);
printf("x=%d\n",sum);
return 0;
}
Monkey需要2个参数,你调用的时候只给了一个
另外,b没有初始化。
要知道怎么修改,你得先说清楚你的程序是干嘛的。
Monkey需要两个参数,而你只传入了一个
目的是想干嘛?这个递归函数不是收敛的,无穷无尽了,最大递归次数到2的64次方了。
你这个函数,x参数可以不用的,要改变外部变量得用指针或引用,去掉x参数改成函数内部定义。