王禄DUT 2022-10-31 20:48 采纳率: 75%
浏览 8
已结题

这个图片就是每次调用函数这个ans不都被重新创建一个新的吗 还是只有函数的里面值被重新创建 ,这个n每次乘的是函数啊 为啥会自动理解为n-1呢

img


佬们递归压根没整明白这个图片他是一直乘返回值吗

img


这个图片就是每次调用函数这个ans不都被重新创建一个新的吗 还是只有函数的里面值被重新创建 ,这个n每次乘的是函数啊 为啥会自动理解为n-1呢

  • 写回答

1条回答 默认 最新

  • it_hao528 2022-10-31 21:20
    关注

    1、每次调用函数,函数里的ans被重新创建
    2、n每次乘的是函数的返回值,返回值就是ans,通过函数逻辑可以看到当传入的参数n小于等于0时返回值为1
    例如 rfact(3) = 3 * rfact(2) = 3 * (2 * rfact(1)) = 3 * 2 * rfact(1) = 3 * 2 * (1 * rfact(0)) = 3 * 2 * 1 * 1 = 6;

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月13日
  • 已采纳回答 11月5日
  • 创建了问题 10月31日