第9天所剩桃子4個桃子,這里面這個9是怎么算出來的?。孔铋_始int num = getPeachNumber(1);不是只給了1嗎?
#include <stdio.h>
int getPeachNumber(n)
{
??? int num;??? //定義所剩桃子數(shù)
??? if(n==10)
??? {
?????? return 1;?????? //遞歸結束條件
??? }
??? else
??? {
??????? num = (getPeachNumber(n+1)+1)*2;?? //這里是不應該用遞歸呢?
??????? printf("第%d天所剩桃子%d個\n", n, num); //天數(shù),所剩桃子個數(shù)
??? }
??? return num;
}
int main()
{
??? int num = getPeachNumber(1);
??? printf("猴子第一天摘了:%d個桃子。\n", num);
??? return 0;
}
2019-06-26
遞歸 num = (getPeachNumber(n+1)+1)*2 遞歸的過程就是如下
getPeachNumber(1) -->getPeachNumber(1)? ... --> getPeachNumber(10)?
getPeachNumber(10) 返回的只是1,沒有printf ,然后就在往上到?
getPeachNumber(9) =(getPeachNumber(10)+1)*2 =4 ,然后輸出就是第九天,把4返回給上一級