誰能幫我說一下執行順序
#include <stdio.h>?
int digui(int n)
{
? ? int ni,sum;
? ? if(n==1)
? ? ? ? ni=10;
? ? else
? ? ni=digui(n-1)+2;(這個是怎得出結果的?比如函數是:5,5-1+2=6(就算加上10也是16))
printf("%d\n",n);
printf("%d\n",ni);
? ? return ni;
? ? printf("%d\n",n);
? ??
}
int main()?
{
? ?int sum=digui(5);
printf("第5個人的年齡是%d歲", sum);?
return 0;
}
2018-02-19
遞歸就是一個函數在它的函數體內調用它自身,比如你輸入digui(5)的時候,判斷n是5不是1,于是年齡數+2,這個時候就是2,與此同時開始運算遞歸digui(4),發現n仍然不等于1,于是年齡數又+2,這時候是4了...直到最后加上最后一人的10歲,總共是18...我也是初學者表達能力不好見諒哈