c语言用函数fac编写程序实现x=1!+3!+5!+7!+9!
时间: 2023-10-06 11:11:54 浏览: 241
以下是用函数fac编写实现x=1! 3! 5! 7! 9!的C语言程序:
```c
#include <stdio.h>
int fac(int n) {
if (n <= 1) {
return 1;
} else {
return n * fac(n-2);
}
}
int main() {
int x = 1;
for (int i = 3; i <= 9; i += 2) {
x *= fac(i);
}
printf("x = %d\n", x);
return 0;
}
```
在这个程序中,我们定义了一个递归函数`fac`,用来计算n的阶乘。然后在`main`函数中,我们使用一个循环来计算1!、3!、5!、7!和9!的乘积,并最终输出结果。
相关问题
c语言用递归编写一个函数fac(),它的功能是求n!。在主函数中调用fac(),分别求5!,3!+5!+7!+9!,3!+7!+15!+10!。
好的,下面是使用递归编写的fac()函数的C语言代码:
```c
#include <stdio.h>
int fac(int n)
{
if (n == 0)
return 1;
else
return n * fac(n - 1);
}
int main()
{
// 求5!
printf("5! = %d\n", fac(5));
// 求3!+5!+7!+9!
int sum1 = fac(3) + fac(5) + fac(7) + fac(9);
printf("3!+5!+7!+9! = %d\n", sum1);
// 求3!+7!+15!+10!
int sum2 = fac(3) + fac(7) + fac(15) + fac(10);
printf("3!+7!+15!+10! = %d\n", sum2);
return 0;
}
```
运行结果如下:
```
5! = 120
3!+5!+7!+9! = 403041
3!+7!+15!+10! = 13128
```
用C语言解决下列问题:用递归编写一个函数fac(),它的功能是求n!。在主函数中调用fac(),分别求5!,3!+5!+7!+9!,3!+7!+15!+10!
好的,下面是使用递归编写的fac()函数的C语言代码:
```c
#include <stdio.h>
int fac(int n)
{
if (n == 0)
return 1;
else
return n * fac(n - 1);
}
int main()
{
// 求5!
printf("5! = %d\n", fac(5));
// 求3!+5!+7!+9!
int sum1 = fac(3) + fac(5) + fac(7) + fac(9);
printf("3!+5!+7!+9! = %d\n", sum1);
// 求3!+7!+15!+10!
int sum2 = fac(3) + fac(7) + fac(15) + fac(10);
printf("3!+7!+15!+10! = %d\n", sum2);
return 0;
}
```
运行结果如下:
```
5! = 120
3!+5!+7!+9! = 403041
3!+7!+15!+10! = 13128
```
阅读全文