c语言中fact用法
时间: 2024-09-14 21:04:20 浏览: 400
在C语言中,"fact"通常是指计算阶乘的函数。阶乘是一个正整数n的所有小于及等于它的正整数的乘积,数学表示为n! = n * (n-1) * (n-2) * ... * 1。如果你想要编写一个用于计算阶乘的函数,你可以这样做:
```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); // 递归调用自身,每次减少1直到n=1
}
}
int main() {
int number;
printf("请输入一个非负整数:");
scanf("%d", &number);
if (number >= 0) { // 检查输入是否是非负整数
unsigned long long result = factorial(number);
printf("该数字的阶乘是:%llu\n", result);
} else {
printf("输入错误,只接受非负整数。\n");
}
return 0;
}
```
在这个例子中,`factorial()`函数接收一个整数作为参数,并通过递归的方式计算其阶乘。在主函数`main()`里,用户会被询问输入一个数,然后调用`factorial()`并打印结果。
阅读全文