#include<stdio.h>
int factorial_rec(int n) //递归容易造成栈溢出,要谨慎使用
{
if(n<=0)
return 1;
if(n>0)
return n*factorial_rec(n-1);
}
int factorial_iter(int n)//迭代堆空间要求没递归苛刻,但是逻辑算法没有递归简单明了
{
int ret=1;
if(n)
{
for(int i=1;i<=n;i++)
ret*=i;
}
return ret;
}
int main()
{
int n=0;
scanf("%d",&n);
int s1=factorial_rec( n);
//int s2= factorial_iter(n);
return 0;
}