用C语言编程求1!+2!+……+20!
时间: 2023-06-01 21:06:44 浏览: 115
您好,这是一个数学问题,我可以为您提供解答。要求1! 2! …… 20!,即求1的阶乘乘以2的阶乘一直到20的阶乘。在C语言中可以使用循环结构和递归函数来计算。使用循环结构可以实现如下:
```c
#include <stdio.h>
int main() {
// 计算1!到20!的乘积
long long int result = 1;
for(int i = 1; i <= 20; i++){
long long int n = 1;
for(int j = 1; j <= i; j++){
n *= j;
}
result *= n;
}
printf("1!到20!的乘积为:%lld\n", result);
return 0;
}
```
使用递归函数可以实现如下:
```c
#include <stdio.h>
long long int factorial(int n){
if(n == 1 || n == 0){
return 1;
}
return n * factorial(n - 1);
}
int main() {
// 计算1!到20!的乘积
long long int result = 1;
for(int i = 1; i <= 20; i++){
result *= factorial(i);
}
printf("1!到20!的乘积为:%lld\n", result);
return 0;
}
```
以上两种方法都可以得到正确的结果。
阅读全文