请看看我的思路哪错了
#include "stdio.h"int fan(int n)
{ int k;
if(n==0||n==1)
return 3;
else
k=n-fan(n-2);
return k;
}
main()
{ printf("%d\n",fan(9));
}
我的思路是 第一次调用fan(9),第二次调用fan(7),第三次调用fan(5),第四次调用fan(3),第五次调用fan(1)
第五次调用返回值是3,第四次调用返回值时k=9-3=6,第三次调用返回值是k=9-6=3,第二次调用返回值是k=9-3=6,
第一次调用返回值是k=9-6=3。
按此思路程序输出结果应该是3,但正确输出是7。 请问我的思路哪错了呢,谢谢