int num; //定义所剩桃子数
if(n==10)
{
num=1; //递归结束条件
}
把return 1;换成num=1;也可以吗?
感觉不可以,return是返回值,你写num的话,num是你定义的一个数,他和返回return本质上都是不同的。
可以 后面有个return
#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; }