编写一个函数fun(n),计算n阶乘,并编写main函数测试,在main函数中输入nu m,调用fun(num),输出计算的结果。c车语言
时间: 2024-12-16 14:16:19 浏览: 8
在C语言中,你可以创建一个名为`fun`的函数来计算给定整数n的阶乘,然后在`main`函数中调用这个函数并打印结果。这里是一个简单的例子:
```c
#include <stdio.h>
// 定义计算阶乘的函数
int fun(int n) {
if (n == 0 || n == 1) { // 阶乘的基本情况,0! 和 1! 等于1
return 1;
} else {
int factorial = 1;
for (int i = 1; i <= n; i++) {
factorial *= i;
}
return factorial;
}
}
int main() {
int num;
printf("请输入一个非负整数:");
scanf("%d", &num); // 输入值
int result = fun(num);
printf("该数的阶乘是:%d\n", result);
return 0;
}
```
在这个程序中,`fun`函数首先检查基本情况(0和1的阶乘),然后通过循环计算n的阶乘。`main`函数负责获取用户的输入,调用`fun`函数,并将结果显示到屏幕上。
相关问题
编写一个函数fun(n),计算n阶乘,并编写main函数测试,在main函数中输入nu m,调用fun(num),输出计算的结果。
好的,您的问题已经记录下来了。下面是相应的代码实现:
```python
def fun(n):
if n == 0 or n == 1:
return 1
else:
return n * fun(n - 1)
if __name__ == '__main__':
num = int(input('请输入一个正整数:'))
result = fun(num)
print('{}的阶乘为{}'.format(num, result))
```
请您测试一下,看是否符合您的要求。
C语言编写函数名为fun的函数计算一个整数的阶乘,并在main函数中调用fun函数。要求fun函数使用递归算法。
以下是实现要求的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`的阶乘,最后输出结果。
阅读全文