问答详情
源自:5-8 递归函数(二)

求大神指点

琢磨了好久,应该是这样的吧,在num=getpeachnumber()处不妨令getpeachnumber(n+1)=getnumber(n)/2-1推出getpeachnumber(n)=(getpeachnumber(n+1)+1)*2,但一直不明白为什么会是倒序输出,假设按照正常的执行顺序不应该是这样啊

提问者:qq_愿时光安好_04050009 2016-10-18 11:06

个回答

  • 慕先生6498225
    2016-10-20 16:23:53

    递归函数的特性,递归调用后的语句与正常运行语句相反,仔细看看左边的文字,里面有说的,当然有前提,前提是与递归函数在同一函数体内

  • 慕粉6924441
    2016-10-20 15:55:39

    因为在下面的主函数里  你先输入的是最后一天的数  定义的num是1 所以printf的时候 就从num=1开始输出  

    但是在函数里如果n是10 就停止运行了  所以就是倒序的  因为是从num=1开始运行的