C# IF、Switch、For、While 循环语句教程 [示例]

流程控制和条件语句

任何编程语言都提供流程控制和条件语句来改变程序的执行流程。

例如,如果一个人想根据某些特定逻辑只执行一部分语句,那么流程控制和条件语句将会非常有用。

当我们浏览 C# 中的各种语句时,您将获得更好的理解。

请注意,以下所有代码都已放入 Program.cs 文件中。

1) If 语句

If 语句用于在执行一组语句之前评估布尔表达式。如果表达式评估为 true,则执行一个语句集,否则执行另一个语句集。

在我们下面的示例中,对一个名为 value 的变量进行了比较。如果变量的值小于 10,则执行一个语句,否则执行另一个语句。

If statement

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program 
 {
  static void Main(string[] args) 
  {
   Int32 value = 11;
   
   if(value<10)
   {
    Console.WriteLine("Value is less than 10");
   }
   else
   {
    Console.WriteLine("Value is greater than 10");
   }
    Console.ReadKey();
  }
 }
}

代码解释

  1. 我们首先定义一个名为 value 的变量,并将其设置为 11。
  2. 然后,我们使用“if”语句检查变量的值是否小于 10。结果将是 true 或 false。
  3. 如果 if 条件评估为 true,我们将消息“Value is less than 10”发送到控制台。
  4. 如果 if 条件评估为 false,我们将消息“Value is greater than 10”发送到控制台。

如果正确输入了上述代码并且程序成功执行,则将显示以下输出。

输出

If statement

我们可以清楚地看到“if”语句的评估结果为 false。因此,消息“Value is greater than 10”被发送到控制台。

2) Switch 语句

switch 语句是“if”语句的增强。如果您需要一次性评估多个表达式,那么编写多个“if”语句会成为一个问题。

switch 语句用于评估表达式,并根据表达式的结果运行不同的语句。如果一个条件不为 true,switch 语句将继续评估下一个条件,依此类推。

让我们通过下面的示例看看它是如何工作的。在这里,我们再次比较一个名为“value”的变量的值。然后我们检查该值是否等于 1、2 或完全不同的值。

Switch statement

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args) 
  {
   Int32 value=11;
   switch(value) 
   {
     case 1: Console.WriteLine("Value is 1");	
     break;
     case 2: Console.WriteLine("Value is 2");
     break;
     default: Console.WriteLine("value is different");
     break;
   }
  }
 }
}

代码解释:

  1. 我们首先定义一个名为“value”的变量,并将其设置为 11。
  2. 然后,我们使用“switch”语句来检查变量“value”的值。
  3. Case 语句用于设置不同的条件。根据条件,可以执行一组语句。switch 语句可以有多个 case 条件。第一个 case 语句检查变量的值是否等于 1。
  4. 如果第一个 case 语句为 true,则向控制台输出消息“Value is 1”。
  5. break 语句用于一旦某个条件为 true,就跳出整个 switch 语句。
  6. default 条件是一个特殊条件。它只是意味着如果没有任何 case 表达式评估为 true,则执行 default 条件的语句集。

如果以上代码输入正确且程序成功执行,将显示以下输出。由于没有满足任何条件,输出打印了默认值“Value is different”。

输出

Switch statement

3) While 循环

while 循环用于迭代目的。假设您想将某个语句集重复执行特定的次数,那么就可以使用 while 循环。

在下面的示例中,我们使用 while 语句来显示变量“i”的值。while 语句用于显示该值 3 次。

While loop

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args) 
  {
   Int32 value=3,i=0;
   
   while(i<value)
   {
    Console.WriteLine(i);
    i=i+1;
   }
    Console.ReadKey(); 
  }
 }
}

代码解释:

  1. 定义了两个整数变量,一个名为 value,另一个名为“i”。value 变量用作迭代 while 语句的上限。而“i”是在迭代过程中处理的变量。
  2. 在 while 语句中,不断将“i”的值与上限进行比较。
  3. 在这里,我们将“i”的值显示到控制台。我们还递增“i”的值。

如果正确输入了上述代码并且程序成功执行,则将显示以下输出。

输出

While loop

在这里,您可以看到 while 语句被执行了 3 次,并且同时递增。每次都显示了变量“i”的当前值。

4) For 循环

“for”循环也用于迭代目的。假设您想将某个语句集重复执行特定的次数,那么就可以使用 for 循环。

在下面的示例中,我们使用“for”语句来显示变量“i”的值。‘for’语句用于显示该值 3 次。

For loop

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args) 
  {
   for(Int32 i=0;i<3;i++)
   {
    Console.WriteLine(i);
   }
    Console.ReadKey(); 
  
  }
 }
}

代码解释:

  1. 使用“for”关键字来启动“for 循环”语句。
  2. 在“for 循环”中,我们定义了 3 个内容。第一个是初始化将在“for 循环”中使用的变量的值。
  3. 第二个是将“i”的值与上限进行比较。在本例中,上限为 3(i<3)。
  4. 最后,我们相应地递增“i”的值。
  5. 在这里,我们将“i”的值显示到控制台。

如果正确输入了上述代码并且程序成功执行,则将显示以下输出。

输出

For loop

在这里,您可以看到“for”语句被执行了 3 次。每次都显示了变量“i”的当前值。