如何用C语言编写程序来生成并显示从1到n的所有整数的阶乘表?
时间: 2024-12-02 22:28:28 浏览: 21
c代码-编写一个求阶乘的函数Fact(),然后在主函数中,计算并输出1到n之间所有数的阶乘值
在C语言中,可以使用循环和递归来计算阶乘。下面是一个简单的示例程序,它会生成并显示从1到用户指定的整数n的所有整数的阶乘:
```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;
printf("请输入一个正整数n: ");
scanf("%d", &n);
// 检查输入是否合法
if (n < 0) {
printf("错误!阶乘只对非负整数有意义。\n");
return 1;
}
printf("阶乘表如下:\n");
for (int i = 1; i <= n; ++i) {
unsigned long long fact = factorial(i);
printf("%d! = %llu\n", i, fact);
}
return 0;
}
```
在这个程序中,`factorial`函数用于计算阶乘,`main`函数中通过for循环遍历1到n,调用`factorial`计算每个数的阶乘,并打印结果。
阅读全文