请你写一段C语言程序,计算一个数的阶乘
时间: 2024-11-22 10:40:39 浏览: 12
C语言 实现N阶乘的程序代码
5星 · 资源好评率100%
当然可以。这是一个简单的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乘以前面数的阶乘结果
}
}
int main() {
int num;
printf("请输入一个非负整数:");
scanf("%d", &num);
// 检查输入是否合法
if (num < 0) {
printf("错误:阶乘只对非负整数有意义。\n");
} else {
unsigned long long result = factorial(num);
printf("%d 的阶乘是 %llu\n", num, result);
}
return 0;
}
```
这个程序首先接收用户输入的整数,然后调用`factorial`函数计算阶乘,并显示结果。请注意,对于较大的数,阶乘可能会超出`int`类型的范围,这里我们使用了`unsigned long long`作为返回类型。
阅读全文