在线编译器 C

#include <stdio.h> int sum(int n) { if (n < 1) { return 0; } return n + sum(n - 1); } printf("%d\n", sum(n)); }
这段代码定义了一个递归函数 `sum`,用于计算从1到n的整数和。但代码末尾的 `printf` 和多余的 `}` 放在了函数外部,导致语法错误。

- 第7行的 `printf` 和最后的 `}` 不在任何函数内部,这是错误的。所有可执行语句必须放在函数(如 `main`)中。
- 变量 `n` 在 `printf` 中使用,但从未定义或赋值。你需要先定义 `n` 并给它一个值,才能调用 `sum(n)`。