在下面的示例中,我们使用递归函数checkFact()查找数字的阶乘-
如果值为1,则由于阶乘为1,则返回1-
if (n == 1) return 1;
如果不是,那么如果您希望值为5,则将在以下迭代中调用递归函数!
Interation1: 5 * checkFact (5 - 1); Interation2: 4 * checkFact (4 - 1); Interation3: 3 * checkFact (3 - 1); Interation4: 4 * checkFact (2 - 1);
要使用递归计算阶乘,您可以尝试运行以下代码,以显示上面的操作-
using System; namespace Demo { class Factorial { public int checkFact(int n) { if (n == 1) return 1; else return n * checkFact(n - 1); } static void Main(string[] args) { int value = 9; int ret; Factorial fact = new Factorial(); ret = fact.checkFact(value); Console.WriteLine("Value is : {0}", ret ); Console.ReadLine(); } } }
输出结果
Value is : 362880