c语言 函数的递归调用问题 这个地方没怎么学明白 求给个详细的过程 谢谢了

#include <stdio.h>
int fun(int x)
{ int p;
if(x==0||x==1) p=3;
else p=x-fun(x-2);
printf("%d\n",p);
return p; }
main()
{ printf("%d\n",fun(7)); }

fun(7)=7-func(5)

func(5)=5-fun(3)

fun(3)=3-fun(1)=3-3

可知fun(7),依次调用了fun(5),fun(3),fun(1)

然后又依次逆向输出了

3

0

5

2

然后main函数中最后有输出了一次fun(7)的返回值2

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网