【发布时间】:2018-08-02 15:39:41
【问题描述】:
我的教授给我这段代码,我需要知道为什么输出是 720 以及这段代码中 FACT 字的用途是什么
static int Fact(int num)
{
if (num == 1)
return 1;
else return num * Fact(num - 1);
}
static void Main(string[] args)
{
Console.WriteLine(Fact(6));
} //output is 720
【问题讨论】:
-
这显然是一个使用递归计算阶乘的学校问题。
-
您应该从阅读 c# 教程开始。看这里:Methods (C# programming)
-
旁白:返回时缺少的大括号并不是一个易于学习的示例。
-
仅当您在课堂上听教授讲话时。
-
Fact没有什么神奇或特别之处。这只是你的教授给函数起的名字。但是,我建议您的教授阅读 Robert C. Martin 的 Clean Code 或至少 this excerpt。那么他应该考虑将其命名为factorial。这样可以避免他的学生需要问这样的问题。
标签: c#