编写一个程序,计算s=1!+2!+3!+…+n!。其中n由输入决定。
时间: 2023-11-14 08:12:49 浏览: 74
计算 S=1!+2!+3!+...+N!。
这个问题可以使用循环来解决。我们可以使用一个变量t来计数器,计算到i时(还未进行计算),此时t的值是(i-1)!,进行计算后,t就变成了i!,也就是说不需要双层for循环每次计算一个阶乘的。具体实现可以参考以下代码:
```
#include <stdio.h>
int main() {
int n, t = 1, ans = 0;
printf("请输入n的值:");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
t = t * i;
ans += t;
}
printf("s=%d\n", ans);
return 0;
}
```
在这个程序中,我们首先输入n的值,然后使用for循环计算每个阶乘,并将它们相加。最后输出结果s。
阅读全文