知道这样不行,但不知道为什么不行
num =(getPeachNumber(n)+1)*2; 这样做的话,和原来的差别体现在哪里?我本意是想再打印出第十天所剩桃子1个,怎么打印出来
2015-08-12
#include <stdio.h>
float getPeachNumber(n)
{
float num; //定义所剩桃子数
if(n==11)
{
return num=-0.5; //递归结束条件
}
else
{
num =(getPeachNumber(n+1)+1)*2 ; //这里是不应该用递归呢?
printf("第%d天所剩桃子%.0f个\n", n,num ); //天数,所剩桃子个数
}
return num;
}
int main()
{
float num = getPeachNumber(1);
printf("猴子第一天摘了:%.0f个桃子。\n", num);
return 0;
}
这样写就行了
举报