使用while完成程序:输入一个正整数 n,求 1!+2!+…+n!并输出。
时间: 2024-10-12 19:07:00 浏览: 39
python计算阶乘和的方法(1!+2!+3!+…+n!)
可以使用while循环结合递归来计算阶乘的和。以下是一个C语言的例子:
```c
#include <stdio.h>
unsigned long long factorial(int n) {
if (n == 0 || n == 1) { // 阶乘的基本情况
return 1;
} else {
return n * factorial(n - 1); // 递归调用自身
}
}
int main() {
int n;
unsigned long long result = 0;
printf("请输入一个正整数: ");
scanf("%d", &n);
while (n > 0) { // 循环计算阶乘并累加
result += factorial(n);
n--;
}
printf("1! + 2! + ... + %d! 的和为: %llu\n", n, result); // 输出结果
return 0;
}
```
这个程序首先通过`factorial()`函数计算从1到n的所有阶乘,然后在`main()`函数的while循环里不断更新结果。当`n`变为0时,循环结束。
阅读全文