Online Compiler C

#include <stdio.h> int main() { int i = 1; int n = 0; int sum = 0; scanf("%d",&n); for(n=1;n<=10;n++){ int ret = 1; for(i=1;i<=n;i++){ ret=ret*i; } sum+=ret;} printf("%d\n",sum); return 0; }
1) 这段代码计算1到10的阶乘之和。首先读取一个输入n(但实际未使用),然后通过双重循环计算每个数字的阶乘并累加,最后输出总和。

2) 提示:
- 注意外层循环的初始值会覆盖输入的n值,导致输入无效
- 内层循环计算阶乘时,ret变量需要在外层循环每次迭代时重置为1