递归调用的问题
根本无法理解递归调用,求大家举例说明
程序代码:#include <cstdio>
int Func(int n)//定义递归函数
{
if(n < 2) //当输入的数小于2,则返回1
return 1;
else
return n*Func(n-1);//比如说输入n=5,当一直执行n-1直到n=1的时候,此时执行上面的if语句,返回1,此时Func(1)=1
}
int main()
{
int n;
printf("请输入一个数:");
scanf("%d",&n);
printf("n! = %d\n",Func(n));
return 0;
}执行过程是: