C# - 循环

有时,您需要多次执行一段代码。通常,语句会按顺序执行:函数中的第一个语句先执行,然后是第二个,依此类推。

编程语言提供了各种控制结构,可以实现更复杂的执行路径。

C# 循环

循环语句允许我们多次执行一个语句或一组语句,以下是大多数编程语言中循环语句的一般形式 -

循环架构

示例

在下面的示例中,我们定义一个数组并使用循环显示数组中的元素 -

using System;
class Example {
   static void Main(string[] args) {
      int[] number = { 1, 2, 3, 5, 6 };
      
      for (int i = 0; i < number.Length; i++) {
         Console.WriteLine(number[i]);
      }
   }
}

输出

以下是输出 -

1
2
3
5
6

C# 循环类型

C# 提供以下几种循环类型来满足循环需求。点击以下链接查看详细信息。

序号 循环类型及说明
1 while 循环

当给定条件为真时,它会重复执行一个或一组语句。它在执行循环体之前测试条件。

2 for 循环

它多次执行一系列语句,并简化管理循环变量的代码。

3 do...while 循环

它类似于 while 语句,但它在循环体的末尾测试条件。

4 嵌套循环

您可以在任何 while、for 或 do..while 循环中使用一个或多个循环。

1. while 循环

while 循环会在给定条件成立时重复执行一个或一组语句。它会在执行循环体之前测试条件。

以下是 C# 中 while 循环的一个示例:

using System;

namespace LoopExample
{
    class Program
    {
        static void Main(string[] args)
        {
            //使用 while 循环打印从 1 到 5 的数字
            int i = 1;
            while (i <= 5)
            {
                Console.WriteLine("Number: " + i);
                i++;
            }
        }
    }
}

当编译并执行上述代码时,它会产生以下结果 -

Number: 1
Number: 2
Number: 3
Number: 4
Number: 5

2. for 循环

for 循环多次执行一系列语句,并简化管理循环变量的代码。

以下是 C# 中 for 循环的一个示例:

using System;

namespace LoopExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // 使用 for 循环打印从 1 到 5 的数字
            for (int i = 1; i <= 5; i++)
            {
                Console.WriteLine("Number: " + i);
            }
        }
    }
}

当编译并执行上述代码时,它会产生以下结果 -

Number: 1
Number: 2
Number: 3
Number: 4
Number: 5

3. do while 循环

do...while 循环与 while 语句类似,不同之处在于它在循环体的末尾测试条件。

以下是 C# 中 do-while 循环的示例:

using System;

namespace LoopExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // 使用 do-while 循环打印从 1 到 5 的数字
            int i = 1;
            do
            {
                Console.WriteLine("Number: " + i);
                i++;
            } while (i <= 5);
        }
    }
}

当编译并执行上述代码时,它会产生以下结果 -

Number: 1
Number: 2
Number: 3
Number: 4
Number: 5

循环控制语句

循环控制语句会改变执行的正常顺序。当执行离开某个作用域时,在该作用域内创建的所有自动对象都将被销毁。

C# 提供以下控制语句。点击以下链接查看详细信息。

序号 控制语句 &说明
1 break 语句

终止 循环switch 语句,并将执行转移到紧接着循环或 switch 语句的语句。

2 continue 语句

使循环跳过其主体的剩余部分,并在重新迭代之前立即重新测试其条件。

示例

在下面的示例中,我们演示了如何使用 break 语句获取目标后控制循环 -

using System;
class Example {
   static void Main(string[] args) {
      int count = 10;
      
      for (int i = 0; i < count; i++) {
         if (i == 5) {
            break;
         }
         Console.WriteLine(i);
      }
   }
}

输出

以下是输出 -

0
1
2
3
4

C# 无限循环

如果条件永不成立,循环将变为无限循环。for 循环通常用于此目的。由于构成 for 循环的三个表达式都不是必需的,因此可以通过将条件表达式留空来创建无限循环。

示例

在下面的示例中,我们演示了无限循环的工作原理 -

using System;
namespace Loops {
   class Program {
      static void Main(string[] args) {
         for (; ; ) {
            Console.WriteLine("Hey! I am Trapped");
         }
      }
   }
} 

当条件表达式不存在时,假定其为真。您可能有一个初始化和增量表达式,但程序员更常用 for(;;) 结构来表示无限循环。