用c语言按要求实现函数 编写一个函数fac,函数的功能是:计算一个整数的阶乘,即n!。在主函数中输入任意一个正整数,调用fac函数,输出该数的阶乘。 输入样例:5 输出样例:120
时间: 2024-02-23 08:01:27 浏览: 88
以下是函数fac的实现,可以在主函数中调用并输入一个正整数n,输出n的阶乘:
```c
#include <stdio.h>
int fac(int n){
if (n == 1) {
return 1;
} else {
return n * fac(n - 1);
}
}
int main() {
int n;
printf("请输入一个正整数: ");
scanf("%d", &n);
printf("%d的阶乘为%d\n", n, fac(n));
return 0;
}
```
输入样例:
```
请输入一个正整数: 5
```
输出样例:
```
5的阶乘为120
```
相关问题
c语言编程实现:定义一个求n的阶乘的函数long fac(int n),在主函数输入一个正整数,然后调用fac函数输出这个数的阶乘值。主函数在前,fac函数在后面定义.提示:用递归方法求n!,n!可用递归关系来表示:
主函数代码如下:
```
#include <stdio.h>
long fac(int n);
int main() {
int n;
printf("请输入一个正整数:");
scanf("%d", &n);
printf("%d的阶乘为%ld\n", n, fac(n));
return 0;
}
```
fac函数代码如下:
```
long fac(int n) {
if (n == 1) {
return 1;
} else {
return n * fac(n - 1);
}
}
```
运行程序后,输入一个正整数,即可得到该数的阶乘值。
Fun函数的功能是:求整数n的阶乘和1!+2!+3!+...+n!。在主函数中调用该函数C语言
的代码如下:
```c
#include <stdio.h>
int fun(int n) {
int sum = 0, fac = 1;
for (int i = 1; i <= n; i++) {
fac *= i;
sum += fac;
}
return sum;
}
int main() {
int n;
printf("请输入一个正整数n:");
scanf("%d", &n);
printf("1!+2!+3!+...+n! = %d\n", fun(n));
return 0;
}
```
在该代码中,`fun`函数使用循环计算了1!到n!的和,并将结果返回给主函数。主函数中,用户需要输入一个正整数n,然后调用`fun`函数计算1!到n!的和并输出结果。
阅读全文