using System;
class Program
{
static void Main()
{
int n = 5; // 要计算阶乘的数
// 调用递归函数计算阶乘
long result = Factorial(n);
Console.WriteLine($"阶乘 {n} 的结果是: {result}");
Console.ReadLine();
}
// 递归函数计算阶乘
static long Factorial(int n)
{
// 基本情况:0的阶乘为1
if (n == 0)
return 1;
// 递归情况:n的阶乘为n乘以(n-1)的阶乘
return n * Factorial(n - 1);
}
}
在上述代码中,Factorial 方法是一个递归函数,用于计算输入整数 n 的阶乘。递归的基本情况是当 n 等于0时,阶乘为1。递归情况是 n 的阶乘等于 n 乘以 (n-1) 的阶乘。递归函数在满足基本情况时返回结果,否则调用自身。
注意:虽然递归是一种优雅的解决方案,但在处理大数字时可能导致栈溢出,因此对于大型输入,考虑使用迭代或其他更高效的算法。
转载请注明出处:http://www.pingtaimeng.com/article/detail/6375/C#