母题:递归求 1 + 2 + … + n

👁️ 23 人浏览 💬 0 人评论 ❤️ 添加收藏

写递归只要想清楚两件事:

  • 结束条件:最小的情况直接给答案——sum(1) 就是 1;
  • 递推关系:大问题怎么用小一号的问题表示——sum(n) = n + sum(n - 1)。

输入 n(1 ≤ n ≤ 100),输出 1 + 2 + … + n。例如输入 4,输出:

10

现在结果总是少 1。运行看画布:每一层返回了几?是从哪一层开始错的?

代码里以 @youci 开头的 printf 只负责运行后在画布上显示中间值,不影响输出和判题,不用改。

提交你的答案
请登录后提交答案。
去登录
代码编辑器
Ctrl + Enter 运行
本次输入:
输出:

                        
👩‍🏫
AI
💬 题目评论
🔒 登录并作答后可看讨论