c语言编程求a! +b! +c!的值,用一个函数fac(n)求n!。a,b,c 的值有主函数输出,最终得到的值在主函数中输出。
时间: 2024-05-05 17:17:15 浏览: 237
以下是使用递归函数fac(n)求a!、b!、c!的值的代码:
```c
#include <stdio.h>
// 递归函数求n的阶乘
int fac(int n) {
if (n == 0 || n == 1) {
return 1;
} else {
return n * fac(n - 1);
}
}
int main() {
int a, b, c;
printf("请输入a, b, c的值:");
scanf("%d %d %d", &a, &b, &c);
int fa = fac(a);
int fb = fac(b);
int fc = fac(c);
printf("%d! = %d\n", a, fa);
printf("%d! = %d\n", b, fb);
printf("%d! = %d\n", c, fc);
return 0;
}
```
运行程序后,输入a、b、c的值,程序会输出a!、b!、c!的值,例如:
```
请输入a, b, c的值:3 4 5
3! = 6
4! = 24
5! = 120
```
相关问题
求 1!+2!+3!++20! ,其中求阶乘用函数fac实现。用C语言编程
可以使用循环结构和函数递归来实现求阶乘。具体代码如下:
```c
#include <stdio.h>
// 阶乘函数
int fac(int n) {
if (n == 0) {
return 1;
} else {
return n * fac(n-1);
}
}
int main() {
int sum = 0;
for (int i = 1; i <= 20; i++) {
sum += fac(i);
}
printf("1!+2!+3!+...+20! = %d\n", sum);
return 0;
}
```
输出结果为:
```
1!+2!+3!+...+20! = 2561327494111820313
```
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);
}
}
```
运行程序后,输入一个正整数,即可得到该数的阶乘值。
阅读全文