利用求阶乘函数FACT编程并计算输出1到N之间所有数的阶乘值
时间: 2025-01-29 21:12:58 浏览: 46
在编程中,我们可以利用循环结构和递归的方式来计算阶乘。阶乘是一个数的所有小于及等于它的正整数的乘积,例如5的阶乘(5!)就是5*4*3*2*1=120。以下是使用C语言编写的一个简单程序,用于计算并输出1到N之间的所有数的阶乘:
```c
#include <stdio.h>
// 使用递归计算阶乘
unsigned long long factorial(int n) {
if (n == 0 || n == 1) {
return 1; // 阶乘的基本情况:0和1的阶乘都是1
} else {
return n * factorial(n - 1); // 递归调用自身,每次减一
}
}
int main() {
int N;
printf("请输入一个整数N: ");
scanf("%d", &N);
for (int i = 1; i <= N; i++) {
unsigned long long fact = factorial(i);
printf("%d 的阶乘是: %llu\n", i, fact);
}
return 0;
}
```
在这个程序中,我们首先定义了一个递归函数`factorial()`,然后在主函数中通过循环遍历1到N,对每个数调用`factorial()`并打印结果。
相关问题
利用求阶乘函数fact,编程计算并输出1到n之间所有整数的阶乘值
以下是Python代码实现:
```python
def fact(n):
if n == 0:
return 1
else:
return n * fact(n-1)
n = int(input("请输入一个正整数:"))
for i in range(1, n+1):
print("%d! = %d" % (i, fact(i)))
```
输入一个正整数后,程序通过循环计算并输出1到n之间所有整数的阶乘值。
利用求阶乘函数fact,编程计算并输出1到n之间所有整数的阶乘值C语言
#include <stdio.h>
int fact(int n); // 声明求阶乘函数
int main() {
int n, i;
printf("请输入一个整数n:");
scanf("%d", &n);
for (i = 1; i <= n; i++) {
printf("%d! = %d\n", i, fact(i)); // 输出每个整数的阶乘值
}
return 0;
}
int fact(int n) {
if (n == 0 || n == 1) { // 0和1的阶乘为1
return 1;
} else {
return n * fact(n - 1); // 递归求解阶乘
}
}
阅读全文
相关推荐
















