函数递归问题,为什么第二个正向打印的时候错了?
#include <stdio.h>int getPeachNumber(n)
{
int num;
if(n == 10)
{
num = 1;
}
else
{
num = (getPeachNumber(n+1)+1)*2;
printf("第%d天所剩桃子%d个\n",n,num);
}
return num;
}
int main()
{
int num = getPeachNumber(1);
printf("猴子第一天摘了:%d个桃子.\n",num);
return 0;
}
int getPeachNumber(int n)
{
int num;
if( n==1)
{
num = 1534;
}
else
{
num= getPeachNumber(n-1)/2-1;
printf("%d %d\n",n,num);
return num;
}
}
#include<stdio.h>
int getPeachNumber(int n);
int getPeachNumber(int n)
{
int num;
if( n==1)
{
num = 1534;
}
else
{
num= getPeachNumber(n-1)/2-1;
printf("%d %d\n",n,num);
return num;
}
}
int main()
{
int num = getPeachNumber(10);
printf("猴子第一天摘了:%d个桃子.\n",num);
return 0;
}