: public int SumFrom1ToX(int x)
: {
: if(x==1)
: {
: return 1;
: }
: else
: {
: int result = x + SumFrom1ToX(x - 1);
: return result;
: }
: }
關於這種例子看不懂的新手
就一行一行想就好
假設在外面呼叫這個function
int Sum = SumFrom1ToX(100);
接下來就是
x不等於1
回傳的變數要等於 100 + SumFrom1ToX(99)
進入到另一個SumFrom1ToX
x不等於1
回傳的變數要等於 99 + SumFrom1ToX(98)
...
...
...
進入到另一個SumFrom1ToX
x等於1
回傳1
回到上一層SumFrom1ToX
2+1=3
回傳3
回到上一層SumFrom1ToX
3+3=6
回傳6
...
...
...
大概這樣
有懂?