在C#中计算阶乘的三种不同方法
要在C#中计算阶乘,可以使用以下三种方式之一-
用for循环计算阶乘
示例
using System;using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace factorial {
class Test {
static void Main(string[] args) {
int i, res;
int value = 5;
res = value;
for (i = value - 1; i >= 1; i--) {
res = res * i;
}
Console.WriteLine("\nFactorial of "+value+" = "+res);
Console.ReadLine();
}
}
}
输出结果
Factorial of 5 = 120
用while循环计算阶乘
示例
using System;namespace MyApplication {
class Factorial {
public int display(int n) {
int res = 1;
while (n != 1) {
res = res * n;
n = n - 1;
}
return res;
}
static void Main(string[] args) {
int value = 5;
int ret;
Factorial fact = new Factorial();
ret = fact.display(value);
Console.WriteLine("Value is : {0}", ret );
Console.ReadLine();
}
}
}
输出结果
Value is : 120
使用递归计算阶乘
示例
using System;namespace MyApplication {
class Factorial {
public int display(int n) {
if (n == 1)
return 1;
else
return n * display(n - 1);
}
static void Main(string[] args) {
int value = 5;
int ret;
Factorial fact = new Factorial();
ret = fact.display(value);
Console.WriteLine("Value is : {0}", ret );
Console.ReadLine();
}
}
}
输出结果
Value is : 120
以上是 在C#中计算阶乘的三种不同方法 的全部内容, 来源链接: utcz.com/z/358997.html