C语言编程求1!+2!+...+10!
时间: 2023-09-13 11:04:51 浏览: 87
您可以使用循环和递归两种方法来解决这个问题。下面是使用循环的代码实现:
```c
#include <stdio.h>
int main() {
int i, j, fact;
long sum = 0;
for(i = 1; i <= 10; i++) {
fact = 1;
for(j = 1; j <= i; j++) {
fact *= j;
}
sum += fact;
}
printf("1! + 2! + ... + 10! = %ld\n", sum);
return 0;
}
```
输出结果为:
```
1! + 2! + ... + 10! = 4037913
```
使用递归实现的代码如下:
```c
#include <stdio.h>
long factorial(int n) {
if(n == 0 || n == 1) {
return 1;
} else {
return n * factorial(n - 1);
}
}
int main() {
int i;
long sum = 0;
for(i = 1; i <= 10; i++) {
sum += factorial(i);
}
printf("1! + 2! + ... + 10! = %ld\n", sum);
return 0;
}
```
输出结果也是:
```
1! + 2! + ... + 10! = 4037913
```
阅读全文