没有循环语句,为什么会反向打印每天所剩桃子数???
int getPeachNumber(n)
{
int num; //定义所剩桃子数
if(n==10)
{
return 1; //递归结束条件
}
else
{
num = (getPeachNumber(n+1)+1)*2; //这里是不应该用递归呢?
printf("第%d天所剩桃子%d个 %d\n", n, num); //天数,所剩桃子个数
}
return num;
}
getPeachNumber(n)这个函数一直被调用一层一层的。
num = (getPeachNumber(n+1)+1)*2; //这里是不应该用递归呢?这一行语句一直执行直到getPeachNumber(10),所以说这个函数被调用了10次,9次要printf所以getPeachNumber(9)的printf先打出来。最后调用的函数最先走完嘛。