只要把類型變壹下就行,其他不用改
換成float或者double類型,最好是double,因為階乘這東西可是天文數字啊
望采納
# include <stdio.h>
int n;
void main()
{
float fac (float a,float b);
float x,y;
float sum;
printf("please input the step number:");
scanf("%d",&n);
sum=fac(x,y);
printf("%f\n",sum);
}
float fac (float a,float b)
{
float comb(float j);
float w=0;
for (a=0;a<=n;a++)
{
for (b=0;b<=n/2;b++)
if (a+2*b==n)
{
w+=comb(a+b)/(comb(a)*comb(b));
}
}
return w;
}
float comb (float j)
{
if (0==j) return 1;
else return (j*comb(j-1));
}