C# IF、Switch、For、While 循环语句教程 [示例]
流程控制和条件语句
任何编程语言中都可以使用流程控制和条件语句来改变程序的流程。
例如,如果有人只想根据某些逻辑执行一组特定的语句,那么流程控制和条件语句将会很有用。
当我们了解 C# 中可用的各种语句时,您将获得更好的理解。
请注意,下面的所有代码都是针对 Program.cs 文件的。
1)If 语句
if 语句用于在执行一组语句之前评估布尔表达式。如果表达式评估结果为真,则它将运行一组语句,否则它将运行另一组语句。
在下面的例子中,对名为 value 的变量进行比较。如果变量的值小于 10,则它将运行一条语句,否则它将运行另一条语句。
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(); } } }
代码说明
- 我们首先定义一个名为value的变量,并将其设置为值11。
- 然后我们使用“if”语句检查变量的值是否小于 10。结果要么是真,要么是假。
- 如果 if 条件计算为真,我们就向控制台发送消息“值小于 10”。
- 如果 if 条件计算结果为假,我们则向控制台发送消息“值大于 10”。
如果上述代码输入正确,并且程序成功执行,则会显示以下输出。
输出:
我们可以清楚地看到,'if' 语句的计算结果为 false。因此,消息“值大于 10”被发送到控制台。
2)Switch 语句
switch 语句是对“if”语句的增强。如果您有多个需要一次性评估的表达式,那么编写多个“if”语句就会成为一个问题。
switch 语句用于评估表达式并根据表达式的结果运行不同的语句。如果一个条件不成立,switch 语句将转到下一个条件,依此类推。
让我们看看下面的例子是如何实现的。在这里,我们再次比较名为“value”的变量的值。然后我们检查该值是否等于 1、2 或完全不同的值。
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; } } } }
代码说明:-
- 我们首先定义一个名为“value”的变量并将其设置为值 11。
- 然后我们使用“switch”语句来检查变量“value”的值。
- Case 语句用于设置不同的条件。根据条件,可以执行一组语句。switch 语句可以有多个 case 条件。第一个 case 语句检查变量的值是否等于 1。
- 如果第一个 case 语句为真,则将消息“Value is 1”写入控制台。
- 一旦条件为真,break 语句用于中断整个 switch 语句。
- 默认条件是一种特殊条件。这仅意味着,如果没有 case 表达式计算结果为真,则运行默认条件的语句集。
如果上述代码输入正确,程序执行成功,则将显示以下输出。由于不满足任何条件,输出将打印默认值“Value is different”。
输出:
3)while循环
while 循环用于迭代目的。假设您想要重复一组特定的语句特定次数,则使用 while 循环。
在下面的示例中,我们使用 while 语句显示变量“i”的值。while 语句用于显示该值 3 次。
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(); } } }
代码说明:-
- 两个整数 变量 定义了两个变量,一个是值,另一个是“i”。值变量用作我们应该迭代 while 语句的上限。而“i”是在迭代过程中要处理的变量。
- 在 while 语句中,不断检查“i”的值是否符合上限。
- 这里我们将“i”的值显示到控制台。我们还增加了“i”的值。
如果上述代码输入正确,并且程序成功执行,则会显示以下输出。
输出:
这里你可以看到while语句被执行了3次并且同时递增。并且每次它都显示变量“i”的当前值。
4)for循环
'for' 循环也用于迭代目的。假设您想要重复一组语句特定次数,则使用 forloop。
在下面的示例中,我们使用“for”语句显示变量“i”的值。“for”语句用于显示该值 3 次。
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(); } } }
代码说明:-
- “for”关键字用于启动“for循环”语句。
- 在 for 循环中,我们定义了 3 件事。第一件是初始化变量的值,该变量将在 for 循环中使用。
- 第二个是将“i”的值与上限进行比较。在我们的例子中,上限是 3(i<3)。
- 最后,我们相应地增加“i”的值。
- 这里我们将‘i’的值显示到控制台。
如果上述代码输入正确,并且程序成功执行,则会显示以下输出。
输出:
这里你可以看到 'for' 语句被执行了 3 次。每次它都显示变量 'i' 的当前值。