求1! +2! +3! +...+20!的和。
时间: 2024-01-09 09:21:30 浏览: 73
以下是三种C语言求1!+2!+3!+...+20!的和的方法:
1.使用for循环计算各项阶乘并求和
```c
#include <stdio.h>
int main() {
int i, j;
double sum = 0, jc;
for (i = 1; i <= 20; i++) {
jc = 1;
for (j = 1; j <= i; j++) {
jc *= j;
}
sum += jc;
}
printf("%lf", sum);
return 0;
}
```
2.使用for循环计算各项阶乘并求和,推荐方法
```c
#include <stdio.h>
int main() {
int i;
double fac = 1, sum = 0;
for (i = 1; i <= 20; i++) {
fac = fac * i;
sum += fac;
}
printf("%lf", sum);
return 0;
}
```
3.使用递归计算各项阶乘并求和
```c
#include <stdio.h>
double Fun(double n) {
if (n == 0) {
return 1;
} else {
return n * Fun(n - 1);
}
}
int main(void) {
double sum = 0, i;
for (i = 1; i <= 20; i++) {
sum += Fun(i);
}
printf("%lf\n", sum);
return 0;
}
```