循环语句while和do…while
在编程中,经常需要重复执行一段代码多次。有时我们可以直接写出这些语句,但当重复次数无法预知或者数量非常大时,这种方式显然不太实用。此时,循环是解决该问题的最佳选择。循环用于在某些条件满足之前,反复执行指定的代码块。
本文将介绍如何在 C# 中使用 while
和 do...while
循环。
作用
while
和 do...while
循环的主要作用是根据条件执行代码块,直到该条件不再满足。两者的区别在于:while
循环会先检查条件再执行,而 do...while
循环则至少会执行一次代码块,之后再检查条件是否继续。
使用场景
当我们需要在条件满足前多次执行某些操作时,while
和 do...while
非常适合。例如,计算一组数字的总和、打印特定的结果表、或是在某个输入有效前等待用户输入等。do...while
适用于至少要执行一次操作的情况,而 while
则适用于在执行之前就需要验证条件的场合。
示例
示例 1: 使用 while
循环
以下代码展示了如何使用 while
循环来进行迭代,输出从 1 到 5 的数字:
using System;
namespace Loop
{
class WhileLoop
{
public static void Main(string[] args)
{
int i = 1;
while (i <= 5)
{
Console.WriteLine("C# For Loop: Iteration {0}", i);
i++;
}
}
}
}
运行结果:
C# For Loop: Iteration 1
C# For Loop: Iteration 2
C# For Loop: Iteration 3
C# For Loop: Iteration 4
C# For Loop: Iteration 5
在这个例子中,程序会从 i=1
开始,依次判断 i
是否小于等于 5,然后输出每次的迭代值。当 i=6
时,条件 i <= 5
为假,循环结束。
示例 2: 使用 while
循环求和
下面的代码使用 while
循环计算前 5 个自然数的和:
using System;
namespace Loop
{
class WhileLoop
{
public static void Main(string[] args)
{
int i = 1, sum = 0;
while (i <= 5)
{
sum += i;
i++;
}
Console.WriteLine("Sum = {0}", sum);
}
}
}
运行结果:
Sum = 15
此程序会在每次迭代中,将当前的 i
加到 sum
中,直到 i
增加到 6,循环结束。
示例 3: 使用 do...while
循环
do...while
循环会先执行一次代码块,再进行条件判断。例如,下面的代码计算 5 的乘法表:
using System;
namespace Loop
{
class DoWhileLoop
{
public static void Main(string[] args)
{
int i = 1, n = 5, product;
do
{
product = n * i;
Console.WriteLine("{0} * {1} = {2}", n, i, product);
i++;
} while (i <= 10);
}
}
}
运行结果:
5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
...
5 * 10 = 50
该程序会输出 5 的乘法表,从 1 乘到 10。由于 do...while
是先执行后判断,因此即使开始时条件不满足,循环体也会至少执行一次。
结语
while
和 do...while
循环是 C# 中非常常见的控制结构,它们能够帮助程序根据条件反复执行任务。在需要重复执行一段代码但条件可能动态变化时,循环结构是非常有用的工具。选择使用 while
还是 do...while
,取决于是否需要在条件判断之前先执行一次代码。