用c语言编写一个函数f(),用来求n!的值。在主函数中输入两个正整数a和b,调用函数f(),求a!+b!的值,并输出结果。
时间: 2024-02-12 07:03:59 浏览: 61
c代码-编写一个求阶乘的函数Fact(),然后在主函数中,计算并输出1到n之间所有数的阶乘值
5星 · 资源好评率100%
好的,下面是求阶乘的函数f()的C语言实现:
```c
#include <stdio.h>
int f(int n) {
if (n == 0) {
return 1;
} else {
return n * f(n - 1);
}
}
int main() {
int a, b, sum;
printf("请输入两个正整数a和b:\n");
scanf("%d %d", &a, &b);
sum = f(a) + f(b);
printf("%d! + %d! = %d\n", a, b, sum);
return 0;
}
```
在函数f()中,我们使用递归的方式来计算n的阶乘。如果n为0,直接返回1;否则,递归调用f(n-1)来计算n的阶乘。
在主函数中,我们先输入两个正整数a和b,然后调用函数f()分别计算a的阶乘和b的阶乘,并将它们相加得到sum。最后使用printf()函数输出结果。
注意:阶乘的值很快就会超过int类型的取值范围,因此如果输入的a或b太大,程序可能会出现错误。可以使用long long类型来扩大取值范围。
阅读全文