C#编写输入整数n(n≥0),分别利用for循环,while循环、do—while循环求n!
时间: 2024-10-22 15:10:58 浏览: 17
在C#中,计算阶乘通常涉及一个递归过程,因为阶乘(n!)等于所有小于等于n的正整数相乘。以下是三种循环结构来实现这个功能:
1. **For循环**:
```csharp
using System;
class Program
{
static void Main()
{
Console.Write("请输入一个非负整数: ");
int n = Convert.ToInt32(Console.ReadLine());
long factorial = 1;
for (int i = 1; i <= n; i++)
{
factorial *= i;
}
Console.WriteLine($"n! = {factorial}");
}
}
```
2. **While循环**:
```csharp
static void Main()
{
Console.Write("请输入一个非负整数: ");
int n = Convert.ToInt32(Console.ReadLine());
long factorial = 1;
while (n > 0)
{
factorial *= n;
n--;
}
Console.WriteLine($"n! = {factorial}");
}
```
3. **Do-While循环**:
```csharp
static void Main()
{
Console.Write("请输入一个非负整数: ");
int n = Convert.ToInt32(Console.ReadLine());
long factorial = 1;
do
{
factorial *= n;
n--;
} while (n >= 0);
Console.WriteLine($"n! = {factorial}");
}
```
以上代码都会先请求用户输入一个整数,然后利用相应循环结构计算并输出阶乘结果。
阅读全文