参考上课PPT80页的while循环计算n阶层的例子,写一个1!+2!+3!+ …+n!的程序。 提示:第i项的值等于i-1项的值乘以i,因此可以用一个循环并且累加来实现,用c语言编程
时间: 2024-11-17 18:28:10 浏览: 18
在C语言中,我们可以利用while循环编写一个程序来计算1! + 2! + 3! + ... + n! 的结果。这里是一个简单的示例,参考了PPT上关于n层阶乘的讲解:
```c
#include <stdio.h>
// 计算阶乘的辅助函数
unsigned long long factorial(int i) {
unsigned long long fact = 1;
while (i > 1) {
fact *= i--;
}
return fact;
}
int main() {
int n, i = 1;
unsigned long long sum = 0;
// 输入n
printf("请输入一个正整数n:");
scanf("%d", &n);
// 计算阶乘并累加到sum
while (i <= n) {
sum += factorial(i);
i++;
}
printf("1! + 2! + 3! + ... + %d! = %llu\n", n, sum);
return 0;
}
```
在这个程序中,我们首先定义了一个`factorial`函数来计算阶乘,然后在`main`函数中通过while循环计算从1到n的所有阶乘,并将它们累加到变量`sum`中。用户会被提示输入一个正整数n,程序会输出1到n的阶乘之和。
阅读全文