C语言入门~~递归函数的输出顺序

来源:5-8 递归函数(二)

qq_照遍天宇_04160908

2016-10-23 22:52

总感觉没有按常理输出呢???!!!

写回答 关注

1回答

  • Void_main
    2016-10-24 09:43:24
    已采纳

    这个问题的递归顺序:

    调用函数时传的值为1,即为第10天的桃子数量;

    进入自己定义的函数中,首先要计算的是第1天的桃子的数量,但是要想得到第1天,就要先知道第2天的数量,

    11. num = (getPeachNumber(n+1)+1)*2;  

    12.printf("第%d天所剩桃子%d个\n", n, num); 

    执行到11行代码时,又遇到了一个getPeachNumber(n+1)函数调用,所以要先得到此调用函数的值,12行的代码暂不执行。

    依次类推,计算第9天的时候,调用getPeachNumber(n+1)函数,即返回了第10天的数量,然后可以执行12行的代码,先输出第9天数量。


    Void_m... 回复qq_照遍天...

    不好意思才看到,N为当前调用的函数的值

    2016-11-07 10:12:43

    共 3 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926020 学习 · 20793 问题

查看课程

相似问题