不能理解我运行此代码时会发生什么

时间:2019-10-15 13:25:17

标签: c function recursion

我不明白为什么effe(10)过程的结果是110。(那是从练习中获得的代码)

我试图写下代码中正在发生的事情,但是递归太多,我无法理解正在发生的事情。

sometable.somecolumn

1 个答案:

答案 0 :(得分:0)

在某种程度上,这是斐波那契的变化。

计算以efff(0),gi(0)开头的值,并计算efff(1),gi(1),efff(2),gi(2),直到达到efff(10),gi( 10)

a    efff(a)    gi(a)
0    0           0
1    2           2
2    2=2+0       2=2+0
3    4=2+2       4=2+2
4    6=2+4       6=2+4
5    10=4+6      10=4+6
6    16=6+10     16=6+10
7    26          26
8    42          42
9    68          68
10   110         110

请注意,每个项目都是斐波那契值(1、2、3、5、8、13、21、34、55)的2倍。