C语言编写程序,求1!+2!+......+10!。
时间: 2023-08-02 07:12:15 浏览: 95
C#语言编写求1!+2!+...+10!的源程序
可以使用循环语句和递归函数来解决这个问题。以下是使用循环语句的示例代码:
```c
#include <stdio.h>
int main() {
int i, j, factorial, sum = 0;
for(i = 1; i <= 10; i++) { // 逐个计算阶乘并累加
factorial = 1;
for(j = 1; j <= i; j++) {
factorial *= j;
}
sum += factorial;
}
printf("1!+2!+...+10! = %d\n", sum);
return 0;
}
```
在这个程序中,我们使用了两层循环语句。外层循环逐个计算 1 到 10 的阶乘,内层循环计算阶乘的值。然后将每个阶乘的值累加到变量 `sum` 中。最后程序输出结果。
以下是使用递归函数的示例代码:
```c
#include <stdio.h>
int factorial(int n) {
if(n == 0 || n == 1) {
return 1;
}
return n * factorial(n - 1);
}
int main() {
int i, sum = 0;
for(i = 1; i <= 10; i++) { // 逐个计算阶乘并累加
sum += factorial(i);
}
printf("1!+2!+...+10! = %d\n", sum);
return 0;
}
```
在这个程序中,我们定义了一个递归函数 `factorial` 来计算阶乘。然后在主函数中逐个调用这个函数计算阶乘并累加到变量 `sum` 中。最后程序输出结果。
阅读全文