编写程序求整数n(<11)的阶乘,要求在主函数中输入n,计算后输出结果,例如输入0,输出0!=1;输入5,输出5!=120c语言
时间: 2024-10-23 20:17:45 浏览: 13
在C语言中,你可以使用循环结构和递归来编写一个简单的程序来求整数n的阶乘。这里是一个示例程序:
```c
#include <stdio.h>
// 定义阶乘函数
unsigned long long factorial(int n) {
if (n == 0 || n == 1) { // 阶乘的基本情况,0! 和 1! 都等于1
return 1;
} else {
return n * factorial(n - 1); // 递归调用自身,计算 n! = n * (n-1)!
}
}
int main() {
int n;
printf("请输入一个整数n (<11): ");
scanf("%d", &n);
// 检查输入是否合法
if (n >= 0 && n < 11) {
unsigned long long result = factorial(n);
printf("%d! = %llu\n", n, result);
} else {
printf("输入错误,n应该小于11。\n");
}
return 0;
}
```
在这个程序中,`factorial()` 函数负责计算阶乘,而 `main()` 函数则处理用户输入并调用 `factorial()` 函数。注意,由于阶乘的结果可能会非常大,特别是对于较大的n值,所以这里使用了 `unsigned long long` 类型来存储结果。
阅读全文