天數怎么是從九到一
#include?<stdio.h> int?getPeachNumber(n) { ????int?num;????//定義所剩桃子數 ????if(n==10) ????{ ????return?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; }
2017-12-29
因為開始傳遞的1,函數接受到1,而內層函數執行加一后再次傳送2,一直在傳送并沒有執行num下一句的那個輸出語句,直到最后一次剛好到10返回1才開始執行(1+1)*2,和后面的printf,此時n為10喔