int factorial(int sum,int n,int end)
{
if(n>end)
return sum; //当n增大到end即返回,sum=Prod_{i=n}^end{i}
else
return factorial(sum*n,n+1,end);//先算sum=sum*n,一直算到n==end,最后返回
}
//表面看return了,很快,其实先不断调用自己知道算出结果,到n==end才一级一级向上返回
//必须return,因为函数有返回值
//函数也可以设定成无返回值+全局变量的形式