1到20阶乘求和c语言
时间: 2024-10-24 07:17:53 浏览: 58
在C语言中,计算1到20的阶乘之和可以使用循环结构和递归函数(如果需要)。这里是一个简单的非递归方法:
```c
#include <stdio.h>
// 计算阶乘
long long factorial(int n) {
if (n == 0 || n == 1)
return 1;
else
return n * factorial(n - 1);
}
int main() {
int i;
long long sum = 0;
for (i = 1; i <= 20; ++i) {
// 求每个数的阶乘并累加
sum += factorial(i);
}
printf("1到20阶乘的和是:%lld\n", sum);
return 0;
}
```
在这个程序中,`factorial()` 函数递归地计算给定整数的阶乘,然后在 `main()` 中通过循环将它们相加。注意,由于阶乘的增长非常快,当n较大时可能会导致溢出,因此我们使用了 `long long` 类型来存储结果。
相关问题
1到20的阶乘求和C语言
#include <stdio.h>
int main() {
int i, j;
long long fact, sum = 0;
for (i = 1; i <= 20; i++) {
fact = 1;
for (j = 1; j <= i; j++) {
fact *= j;
}
sum += fact;
}
printf("1到20的阶乘之和为:%lld", sum);
return 0;
}
一加到20的阶乘求和C语言
#include <stdio.h>
int main() {
int sum = 0;
int factorial = 1;
for (int i = 1; i <= 20; i++) {
factorial *= i;
sum += factorial;
}
printf("1!+2!+3!+...+20! = %d", sum);
return 0;
}
阅读全文