#include<stdio.h>
void main()
{
float fac(int n);
int n;
float y;
printf("input an intrger number:");
scanf("%d",&n);
y=fac(n);
printf("%d!=%10.0f\n",n,y);
}
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);
}
我不理解递归的概念 返回值返回的是一个函数?
递归又是怎么样进行循环的?
有高手可以用通俗点的话解释下吗 小弟谢谢了
void main()
{
float fac(int n);
int n;
float y;
printf("input an intrger number:");
scanf("%d",&n);
y=fac(n);
printf("%d!=%10.0f\n",n,y);
}
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);
}
我不理解递归的概念 返回值返回的是一个函数?
递归又是怎么样进行循环的?
有高手可以用通俗点的话解释下吗 小弟谢谢了

