遞歸算桃返回值的問題
#include?<stdio.h> int?getPeachNumber(int?n) { ????int?num;????//定義所剩桃子數 ????if(n==10) ????{ ????????return?1;???????//遞歸結束條件 ????} ????else? ????{ ????????num?=?(getPeachNumber(n+1)+1)*2;???//這里是不應該用遞歸呢? ????????printf("第%d天所剩桃子%d個\n",?n,?num);?//天數,所剩桃子個數 ????} ????return?num; } .........................................
在遞歸算桃這個例子里,遞歸結束條件?return 1為什么不能用num=1?這兩個都能編譯運行。請問有區別嗎?
2016-01-24
return 1是返回函數值給該函數,然后結束運算;num = 1只是簡單的賦值,繼續向下運行。