求1+2!+3!+...+20!的和。用C语言代码写出
时间: 2023-11-17 09:00:26 浏览: 57
```
#include <stdio.h>
int main() {
int n = 20;
long long sum = 0, fac = 1;
for (int i = 1; i <= n; i++) {
fac *= i;
sum += fac;
}
printf("%lld", sum);
return 0;
}
```
相关问题
写一段c语言代码实现求出1!+2!+.......+10!
以下是实现求出1! 2! ....... 10!的C语言代码:
```c
#include <stdio.h>
int main() {
int n = 10;
long long factorial = 1;
for (int i = 1; i <= n; ++i) {
factorial *= i;
printf("%d! = %lld\n", i, factorial);
}
return 0;
}
```
运行结果:
```
1! = 1
2! = 2
3! = 6
4! = 24
5! = 120
6! = 720
7! = 5040
8! = 40320
9! = 362880
10! = 3628800
```
这段代码使用了循环计算1到10的阶乘,并输出每个阶乘的结果。
求1+2!+3!+...+100!的和,用c语言编程,写出设计思路,并画出流程图
题目分析:
1+2!+3!+...+100!的和,可以看做是1!+2!+3!+...+100!的前缀和。
因此,我们需要计算1!到100!的阶乘,并将它们依次加起来,得到最终的结果。
设计思路:
1. 定义一个变量sum,用于存储最终的结果。
2. 定义一个变量factorial,用于存储当前数的阶乘。
3. 使用for循环,从1到100遍历每个数。
4. 在循环中,计算当前数的阶乘。
5. 将当前数的阶乘加到sum中。
6. 循环结束后,输出sum的值。
C语言代码:
```
#include <stdio.h>
int main()
{
int i, j;
long long factorial, sum = 0;
for (i = 1; i <= 100; i++) {
factorial = 1;
for (j = 1; j <= i; j++) {
factorial *= j;
}
sum += factorial;
}
printf("1!+2!+3!+...+100! = %lld\n", sum);
return 0;
}
```
流程图:
![求1+2!+3!+...+100!的和的流程图](https://img-blog.csdnimg.cn/2021110119090953.png)
阅读全文