用C语言写一个递归算法求N!

上一篇 / 下一篇  2010-09-18 20:38:23

float fac(int n)
{
float f;
if(n<0) printf("n<0,dataerror!");
else if(n==0 || n==1) f=1;
else f=fac(n-1)*n;
return(f);
}
 
main()
{
int n;
float y;
printf("input a integer number:");
scanf("%d",&n);
y=fac(n);
printf("%d!=%15.0f",n,y);
}

TAG:

米兰卡卡的个人空间 引用 删除 米兰卡卡   /   2010-09-19 16:13:38
直接用Register变量和Static变量吧,用寄存器变量的更快点,有些编译器不支持递归调用,所以还是用static吧,供参考
 

评分:0

我来说两句

Open Toolbar