是用C语言么?我用递归调用帮你写个
#include <stdio.h>
void main()
{
int fac(int n);
int a;
float b;
prinf("input an integer number:")
scanf(%d,&a)
b=fac(a)
prinf("%d!=%10.0f\n",a,b)
}
int fac(int n)
{float f;
if(n<0)
{prinf("n<0,dataerror!")
}
else
if(n==0||n==1)
f=1;
else
f=fac(n-1)*n:
return(f);
}
温馨提示:答案为网友推荐,仅供参考