这段代码试图用递归计算从1到n的和,但存在语法错误和逻辑问题。 - 在 `scanf` 中,你使用了 `"%d".n`,这是错误的。`scanf` 的第二个参数应该是变量的地址,正确的写法是用逗号分隔,并且变量前加 `&` 符号。 - `sum_1_to_n` 函数内部多了一对多余的花括号,虽然不会导致错误,但会使代码结构不清晰。更关键的是,当 `n` 不为1时,递归调用 `sum_1_to_n(n - 1)` 会一直进行,但缺少对 `n` 为0或负数时的处理,可能导致无限递归。
Copy this url:
QR-code: