求助大佬,用raptor做?

求助大佬,万分感谢

1.问题描述
n的阶乘定义为n*(n-1)*(n-2)*…*3*2*1,记为n!。请编写程序计算一个数的阶乘(特殊的 0!=1)
2.思路分析
这道题有两种方法,这两种方法源于对这个阶乘定义的使用,下面我们来看看差别。
a) 递归调用的方法
这种方法是利用了阶乘这个定义的自身,我们假定f(n)是求n的阶乘的一个函数关系,f(n-1)就是求(n-1)!,…,f(1)就是求1!, 1!=1我们已知。因此我们有
这就相当于当我们调用f(n)的时候,这个函数反复调用了这个函数本身,只不过每次调用传入函数的参数不同,一直调用到f(1),因为f(1)是一个已知的数值1。
温馨提示:答案为网友推荐,仅供参考
相似回答