int f(int n) { if( n == 1 || n == 2) return 1; else return f(n - 1) + f(n - 2); }

#include <stdio.h>

void main()
{
printf("The number of rabbits is %d\n", f(20)*2);
}
其中

f(n - 1) + f(n - 2);
调用函数, f(20)*2
计算机 运行得出 13530?
套用函数 f(19)-f(20) ??? 怎么能算得出 13530 不解 请教大神

f(20)

= f(19) - f(18)

= f(18)-f(17) - [f(17) - f(16)]
= f(18) - 2f(17) + f(16)
……中间省略78个字……(反正就是往下展开)

还有你写错了额
f(20)是f(19)-f(18),不是f(19)-f(20)
温馨提示:答案为网友推荐,仅供参考
相似回答