用C语言的递归方法求1!+3!+5!+7!
1个回答
展开全部
int
work(int
x,
int
&sum)
{
int
y;
if
(x<=1)
{sum+=1;return
1;}
y=work(x-1,sum)*x;
if
(x%2)
sum+=y;
return
y;
}
void
main()
{int
sum;
work(7,sum);
printf("%d",sum)}
/////////////////
正好以前写过
fs(n)当洞搜n为偶数时求2!+4!+...+n!
奇数是是旁桐求1!+3!+5!...+n!
//
S:~
#include
<stdio.h>
double
_fs(double
x,
double
y)
{
return
y
>=
3
?
_fs(((x
==
y
?
x*(x-1)
:
x)+1)*(y-2)*(y-3
==
0
?
1
:
y-3),
y-2)
:
x;
}
#define
fs(a)
_fs(a,
a)
int
main()
{
printf("%g"纳启历,
fs(7));
return
0;
}
work(int
x,
int
&sum)
{
int
y;
if
(x<=1)
{sum+=1;return
1;}
y=work(x-1,sum)*x;
if
(x%2)
sum+=y;
return
y;
}
void
main()
{int
sum;
work(7,sum);
printf("%d",sum)}
/////////////////
正好以前写过
fs(n)当洞搜n为偶数时求2!+4!+...+n!
奇数是是旁桐求1!+3!+5!...+n!
//
S:~
#include
<stdio.h>
double
_fs(double
x,
double
y)
{
return
y
>=
3
?
_fs(((x
==
y
?
x*(x-1)
:
x)+1)*(y-2)*(y-3
==
0
?
1
:
y-3),
y-2)
:
x;
}
#define
fs(a)
_fs(a,
a)
int
main()
{
printf("%g"纳启历,
fs(7));
return
0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询