深基7.例7】计算阶乘C语言
时间: 2024-10-24 14:07:18 浏览: 17
在C语言中,计算阶乘可以使用递归函数来实现。阶乘是一个数的所有小于及等于它的正整数的乘积。例如,5的阶乘(表示为5!)就是5 * 4 * 3 * 2 * 1。
下面是一个简单的C语言函数,用于计算给定整数n的阶乘:
```c
#include <stdio.h>
// 定义计算阶乘的递归函数
unsigned long long factorial(int n) {
if (n == 0 || n == 1) { // 阶乘的基本情况,0和1的阶乘都是1
return 1;
} else {
// 递归调用,n的阶乘是n乘以(n- 1);
}
}
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`函数会计算并返回该数的阶乘。如果输入的是负数,主函数会给出错误信息。
阅读全文