求一个最经典的阶乘算法(c#)
发布网友
发布时间:2024-10-23 20:33
我来回答
共1个回答
热心网友
时间:2024-11-09 10:25
C# 控制台程序
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication2
{
class Class1
{
private static void Main()
{
Console.Write("Please input num N:");
int _n = 0;
try//有可能输入字符,所以要try一下
{
_n = int.Parse(Console.ReadLine());
}
catch
{ }
if (_n > 0)
Console.WriteLine(factorial(_n));
else if (_n == 0)
Console.WriteLine(1);
else//为负数的时候
Console.WriteLine("Error!");
Console.ReadLine();
}
/// <summary>
/// 阶乘函数
/// </summary>
/// <param name="n">数值N</param>
/// <returns>阶乘结果</returns>
private static long factorial(int n)//记得一定要用long返回类型,不然数值大了就成负数了哦
{
if (n == 1) return 1;
else return n * factorial(n - 1);
}
}
}