C语言编写函数名为fun的函数计算一个整数的阶乘,并在main函数中调用fun函数。要求fun函数使用递归算法。
时间: 2024-04-30 10:18:59 浏览: 30
以下是实现要求的C语言代码:
```
#include <stdio.h>
int fun(int n) {
if (n == 0) { // 0的阶乘为1
return 1;
} else {
return n * fun(n-1); // 递归调用
}
}
int main() {
int n;
printf("请输入一个整数:");
scanf("%d", &n);
printf("%d的阶乘为%d", n, fun(n));
return 0;
}
```
在上述代码中,使用了递归算法实现了一个名为`fun`的函数,该函数接收一个整数`n`作为参数,返回`n`的阶乘。在`main`函数中,首先输入一个整数`n`,然后调用`fun`函数计算`n`的阶乘,最后输出结果。
相关问题
编写一个函数,使用递归的方法,计算一个正整数的阶乘并输出JS函数
function factorial(n) {
if (n === 1) {
return 1;
} else {
return n * factorial(n - 1);
}
}
console.log(factorial(5)); // 输出 120
使用Python编写一个求阶乘的递归函数,并进行调用求10的阶乘。
好的,下面是代码:
```python
def factorial(n):
if n == 1:
return 1
else:
return n * factorial(n-1)
result = factorial(10)
print(result)
```
输出结果为:
```
3628800
```
在这里,我们定义了一个名为 `factorial` 的递归函数来计算阶乘。函数接受一个参数 `n`,表示要求的阶乘数。当 `n` 等于 1 时,我们返回 1,否则我们递归调用 `factorial` 函数来计算 `n-1` 的阶乘,然后将 `n` 乘以该结果得到 `n` 的阶乘。最后,我们调用 `factorial` 函数来计算 10 的阶乘,并将结果存储在变量 `result` 中,最后打印出来。