Online Compiler C

#include <stdio.h> int main() { int i = 1; int n = 0; int ret = 1; int sum = 0; scanf("%d",&n); for(n=1;n<=10;n++){ for(i=1;i<=n;i++){ ret=ret*i; } sum+=ret;} printf("%d\n",sum); return 0; }
1) 这段代码试图计算1!到10!的阶乘之和(即1! + 2! + ... + 10!)。它使用嵌套循环,外层循环控制阶乘的项数,内层循环计算每个数的阶乘,并将结果累加到sum中。

2) 提示:
- 注意ret变量在内层循环开始前需要重置为1,否则会保留上一次阶乘的结果导致计算错误
- 外层循环的初始条件n=1会覆盖用户输入的n值,这可能不是预期行为