编写一个 C# 程序,使用递归计算阶乘

csharpprogrammingserver side programming更新于 2025/10/15 19:37:17

在下面的例子中,我们使用递归函数 checkFact () 来计算一个数的阶乘 −

如果值为 1,则返回 1,因为 Factorial 是 1 −

if (n == 1)
return 1;

如果不是,那么如果您想要得到 5 的值,则递归函数将在以下迭代中被调用!

迭代 1:
5 * checkFact (5 - 1);

迭代 2:
4 * checkFact (4 - 1);

迭代 3:
3 * checkFact (3 - 1);

迭代 4:
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

相关文章