Re: [问题] 请问关于累加的这种语法表示法

楼主: TameFoxx (foxx)   2016-04-11 10:56:18
: 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
...
...
...
大概这样
有懂?
作者: neo5277 (I am an agent of chaos)   2016-04-11 16:47:00
用到一百也太多了 到六就好了 设中断点跟加入监看式就会满清楚了 一个是运作条件一个是停止条件

Links booklink

Contact Us: admin [ a t ] ucptt.com