编写程序求整数n(<11)的阶乘,要求在主函数中输入n,计算后输出结果,例如输入0,输出0!=1;输入5,输出5!=120。使用C语言
时间: 2024-10-19 19:15:51 浏览: 15
c代码-编写一个求阶乘的函数Fact(),然后在主函数中,计算并输出1到n之间所有数的阶乘值
在C语言中,编写一个程序来求整数n的阶乘可以按照递归的方式来实现。以下是简单的代码示例:
```c
#include <stdio.h>
unsigned long long factorial(int n) {
// 阶乘的基本情况:0! = 1 和 1! = 1
if (n == 0 || n == 1)
return 1;
else
// 使用递归计算阶乘
return n * factorial(n - 1);
}
int main() {
int n;
printf("请输入一个0到10之间的整数: ");
scanf("%d", &n); // 输入验证
// 确保输入的数值在允许范围内
if (n >= 0 && n <= 10) {
unsigned long long result = factorial(n);
printf("%d! = %llu\n", n, result);
} else {
printf("错误:输入值超出范围,请输入0到10之间的整数。\n");
}
return 0;
}
```
在这个程序中,`factorial()` 函数用于递归计算阶乘,而 `main()` 函数则负责接收用户输入并显示结果。注意这里我们使用了 `unsigned long long` 类型来存储可能很大的阶乘结果,因为小的整数如 0 到 10 的阶乘不会很大,但如果需要更大的数字,记得更新返回类型。
阅读全文