Online Compiler C

#include <stdio.h> int sum(int n) { if (n < 1) { return 0; } return n + sum(n - 1); } printf("%d",sum);}
这段代码定义了一个递归函数 `sum`,用于计算从 1 到 n 的整数和。但代码在 `main` 函数之外直接调用了 `printf` 和 `sum`,这是错误的。

- 你的 `printf` 和 `sum` 调用没有放在任何函数内部,比如 `main` 函数。C 程序的执行入口是 `main` 函数,所有可执行语句必须放在函数体内。
- 在 `printf` 中,你写的是 `sum` 而不是 `sum(某个数字)`,这样传递的是函数地址,而不是调用函数的结果。你需要传入一个具体的参数来调用 `sum`。