C# 的控制流语句

2024-10-08 20:44:57 浏览数 (2)

在编程中,控制流语句是程序执行流程的基石。它们决定了代码的执行顺序,允许程序根据条件执行不同的代码块。C#,作为一门现代的、类型安全的面向对象编程语言,提供了丰富的控制流语句,使得编写灵活且强大的程序成为可能。本文将深入探讨C#中的控制流语句,包括它们的用途、语法和一些实用的编程技巧。

1. 条件语句

条件语句允许程序根据条件表达式的真假来执行不同的代码块。

1.1 if语句

if语句是最基本的条件语句,它根据条件表达式的真假来决定是否执行特定的代码块。

代码语言:javascript复制
int number = 10;
if (number > 5)
{
    Console.WriteLine("Number is greater than 5");
}

1.2 if...else语句

当需要在条件为真时执行一段代码,条件为假时执行另一段代码时,可以使用if...else语句。

代码语言:javascript复制
int number = 5;
if (number > 5)
{
    Console.WriteLine("Number is greater than 5");
}
else
{
    Console.WriteLine("Number is not greater than 5");
}

1.3 if...else if...else语句

当有多个条件需要检查时,可以使用if...else if...else语句。

代码语言:javascript复制
int number = 3;
if (number > 5)
{
    Console.WriteLine("Number is greater than 5");
}
else if (number < 5)
{
    Console.WriteLine("Number is less than 5");
}
else
{
    Console.WriteLine("Number is equal to 5");
}

1.4 switch语句

switch语句是另一种条件语句,它允许根据变量的值执行不同的代码块。

代码语言:javascript复制
int number = 2;
switch (number)
{
    case 1:
        Console.WriteLine("Number is 1");
        break;
    case 2:
        Console.WriteLine("Number is 2");
        break;
    default:
        Console.WriteLine("Number is neither 1 nor 2");
        break;
}

2. 循环语句

循环语句允许程序重复执行一段代码,直到满足特定的退出条件。

2.1 for循环

for循环是一种基本的循环结构,它允许程序员指定循环的初始条件、循环继续的条件和每次迭代后执行的操作。

代码语言:javascript复制
for (int i = 0; i < 5; i  )
{
    Console.WriteLine(i);
}

2.2 while循环

while循环会一直执行,直到条件表达式的结果为false

代码语言:javascript复制
int i = 0;
while (i < 5)
{
    Console.WriteLine(i);
    i  ;
}

2.3 do...while循环

do...while循环至少执行一次循环体,然后检查条件表达式,如果为true,则继续执行循环体。

代码语言:javascript复制
int i = 0;
do
{
    Console.WriteLine(i);
    i  ;
} while (i < 5);

3. 跳转语句

跳转语句允许程序跳转到代码的另一部分执行。

3.1 break语句

break语句用于立即退出循环或switch语句。

代码语言:javascript复制
for (int i = 0; i < 5; i  )
{
    if (i == 3)
    {
        break;
    }
    Console.WriteLine(i);
}

3.2 continue语句

continue语句用于跳过当前迭代的剩余部分,并开始下一次迭代。

代码语言:javascript复制
for (int i = 0; i < 5; i  )
{
    if (i % 2 == 0)
    {
        continue;
    }
    Console.WriteLine(i);
}

3.3 goto语句

goto语句允许程序跳转到代码中的特定标签。

代码语言:javascript复制
goto Label;

for (int i = 0; i < 5; i  )
{
    Console.WriteLine(i);
}

Label:
Console.WriteLine("After loop");

4. 异常处理

异常处理语句允许程序在遇到错误时优雅地处理,而不是崩溃。

4.1 try...catch语句

try...catch语句用于捕获和处理异常。

代码语言:javascript复制
try
{
    int result = 10 / 0;
}
catch (DivideByZeroException ex)
{
    Console.WriteLine("Error: "   ex.Message);
}

4.2 finally语句

finally块总是会执行,无论是否发生异常。

代码语言:javascript复制
try
{
    // Code that might throw an exception
}
catch (Exception ex)
{
    // Handle the exception
}
finally
{
    // Code that will always be executed
}

4.3 throw语句

throw语句用于手动抛出一个异常。

代码语言:javascript复制
public void Divide(int a, int b)
{
    if (b == 0)
    {
        throw new DivideByZeroException("Cannot divide by zero.");
    }
    Console.WriteLine(a / b);
}

0 人点赞