c#做每个编程语言都有循环,C#语言与您学习的其他C样式的其他语言不同。有几种类型的循环,包括,觅食,虽然和做。当您的工程软件时,这些循环中的每一个都具有特定目的。循环的循环是所有循环的最少使用之一,但它仍然具有良好的目的。

While循环和For循环的区别

While循环和for循环是用于遍历一组记录或值的两种类型的循环。这两种类型之间的区别在于退出循环的触发器。for和foreach循环遍历特定数量的记录或值,直到每个记录都被记录。while和do while循环遍历一组值,直到出现特定的条件,这意味着不是每个记录都被求值。这个条件可以是一个改变的标志,一个改变的值,或者你可以使用while和do while循环,类似于for循环,并在一定数量的循环完成后退出。

需要一个c#frefer?采取进修班级。

循环之间的频率和循环之间的差异

软件工程需要理解代码执行以及代码如何操作值。要正确地设计代码,你需要知道这些复杂的东西。因此,理解两种类型的while循环之间的区别是很重要的。

首先,循环执行直到满足条件。您可以在代码中静态或动态地确定此条件。但是,虽然,始终至少执行一次代码逻辑。“do”关键字在循环的开头设置,逻辑执行,然后评估条件。有一段时间循环,代码逻辑可能永远不会执行,因为首先评估条件。换句话说,循环始终执行一次,并且循环逻辑可能导致循环永不执行的循环。这可能看起来微不足道,但在工程时很重要。

就像其他循环一样,您也可以在循环过早退出DO。您通常在从辅助条件退出循环时通常执行此操作。

当您总是需要至少执行一次代码时,Do while循环是有益的。例如,如果您想要添加一组数字,并且您总是至少有一个值要加和,那么您可以使用do while循环来聚合这些数字,直到所有的值都加起来。然后将总数放入另一个变量并显示给用户。

在处理循环之前学习一些c#基础知识。

创建一个While循环

在循环时创建DO时的第一步是确定要使用它并创建退出触发器的条件的方法。在该示例中,当总值超过第20号时,从阵列中添加数字列表,并且循环退出。

要在c#中创建数组,请使用以下代码:

Int [] numbers = new Int [] {10,3,8,15};

数据类型旁边的括号告诉c#编译器数组已经创建。在这个例子中,创建了一个整数数组。您还可以使用相同的语法使用string[]创建字符串数组或使用byte[]创建字节数组。

在本例中,创建了一个静态数量的数字。但是,您也可以使用代码动态填充数组。通常,您有一组动态的数字,但这足以为do while循环创建一个简单的示例。

在添加数字时,您需要总值变量来包含总数。在阵列语法后添加以下代码行:

int totalValue = 0;

请注意,括号不附加到“int”关键字。那是因为这是一个值而不是数组。请注意,总数据类型与数组相同。如果您有一系列十进制数字,则需要将总值变量定义为十进制数。

除了SUM变量之外,您还需要一个用于访问数组中的每个索引的变量。在此示例中,使用变量“j”。每次循环完成时,变量j都会递增一个。由于数组索引在索引0开始,因此必须初始化为0.由于示例阵列有四个值,j递增为0到3,因为阵列中的4个值在0开始,结束为3。

以下语法创建变量j并将其初始化为0:

Int j = 0;

下一步是设置循环。因为C#语言需要在循环的逻辑时围绕做括号,所以最好设置循环及其条件,因此您不会意外忘记括号。错位并忘记括号是非常令人沮丧的,因为代码无法编译,而且您将在数千行代码中找到一个缺少的括号。

以下代码在循环shell时设置do do:

do {}(条件);

代替“条件”是代码退出循环的触发器。必须满足此条件,或者您可以创建所谓的无限循环。在从未满足条件时发生无限循环,并且循环中的代码永远不会停止执行。循环继续直到程序崩溃。无限循环通常会崩溃程序。在慢速计算机上,无限循环可能会崩溃程序运行的计算机。

在此示例中,目标是添加数组编号,直到总量到达或超过20.以下代码将条件添加到循环:

do {}(totalValue <= 20);

请注意," <= "意味着如果total等于20,它将执行另一个循环,并且超过值20。您的逻辑在这里很重要,因为错误的逻辑可能会添加错误的值,从而导致代码中的错误。

此外,尽管这段代码没有任何在条件中执行的逻辑代码,但它在技术上是可以编译的。然而,什么也不会发生,条件也永远不会满足。这将反过来创建一个无限循环并使程序崩溃。因此,务必不要忘记在编译和执行代码之前完成do while循环。

现在需要将这些数字相加。有4个数字要添加。正如您所猜测的那样,只有前三个数字将被添加,直到do while循环结束。然而,在大多数情况下,您将拥有一个动态的数字列表,并且在大多数情况下,总值也是动态的。这意味着您无法确定do while循环何时退出。

以下代码添加了每个数组编号,并将值保存到TotalValue变量:

do {totalvalue = totalValue +数字[J];} while(totalValue <= 20);

The totalvalue variable is initialized to 0, so the first iteration of the loop adds 0 to the first integer in the array, which is 10. In the next iteration, totalvalue is 10, and it’s added to the number 3. This addition process continues until totalvalue is equal to or greater than 20.

您可能已经注意到丢失的一件事是递增j变量。此时,将第一个数组添加到TotalValue中。幸运的是继续加起来,所以你没有用无限循环陷入困境,这意味着程序不会崩溃。但是,您的逻辑会出错,因此您的程序将具有所谓的逻辑错误。逻辑错误难以排除故障,因此最好在部署应用程序之前测试和完成循环。

以下代码将递增J变量添加到DO时循环:

do {totalvalue = totalValue +数字[J];J ++;} while(totalValue <= 20);

请注意“J ++”代码在第一个添加语法之后。这是因为j被初始化为零,因此您需要访问数字阵列中的第一个索引。如果您首先放置J ++语法,则只会添加位于索引的数组的第二个值。

通过中级在线课程学习一些额外的c#技能。

退出Do While循环

当满足另一个条件时,您可以在循环时退出DO。当您长时间执行循环时,这非常有用,并且您需要在不包含主触发条件的循环中评估DO中的变量。

例如,使用前一个示例,如果总和等于少于20的数字,则可能希望退出循环。您可以使用if语句执行此操作。以下代码“在TotalValue变量等于15:

do {totalvalue = totalValue +数字[J];if(totalvalue == 15){break;} + +;} while(totalValue <= 20);

因为我们已经知道数字数组的值,所以我们知道将永远不会满足此条件。但是,如果条件设置为13,则循环执行时执行在断开之前仅执行两次。当您在停止执行之前您有多个条件,此过程是有益的。当您动态设置值时,您可能不知道代码何时停止执行。您可以使用这些辅助条件来设置备份,以确保循环不继续符合主触发条件,这将基本上创建无限循环。

要将所有代码放在一起,以下语法完全完成了C#循环代码的C#:

Int [] numbers = new Int [] {10,3,8,15};Int j = 0;do {totalvalue = totalValue +数字[J];if(totalvalue == 15){break;} + +;} while(totalValue <= 20);

还可以使用do while循环来递减数字。如果您想减少数字直到达到负值,do while循环也可以实现这个目标。例如,使用上面的示例,只需要做一些更改。首先,您需要更改触发退出条件。第二,您需要更改if语句条件,第三,您需要从totalvalue变量中减去值,而不是添加值。

以下代码递减值,直到总值小于-20:

Int [] numbers = new Int [] {10,3,8,15};Int j = 0;Do {totalvalue = totalvalue - numbers[j];If (totalvalue == -15) {break;} + +;} while (totalvalue <= -20);

请注意数组值没有更改。更改的唯一更改的是从总值变量中减去数组中的项目。这部分是重要的,因为逻辑不同,即使在代码和语法上没有太大改变。此外,IF语句还查找负数而不是正数。如果将IF语句留成正数,则不会达到它。

循环是任何程序员语法和代码词汇的组成部分。了解语法和循环如何执行时的语法和逻辑非常重要。程序员要了解循环有时很难理解,因为它们可以具有复杂的逻辑。但是,了解循环逻辑很重要,因为它们也是逻辑错误发生的代码的主要区域之一。避免在循环代码中造成逻辑错误的最佳方法是使用Visual Studio工具完全测试它并通过代码进行步骤。

继续前进到下一个C#编码样式。

一旦你完成了do while循环,你就可以继续其他循环,包括for, foreach和while循环。

c#顶级课程

用于初学者的#.NET
里克•菲利普斯
4.4 (1263)
完成C#Unity Game Developer 3D
Ben Tristem,Rick Davidson,Gamev.TV团队
4.7 (26,828)
畅销书
C#中间:类,接口和OOP
Mosh Hamedani.
4.6 (23135)
畅销书
RPG核心战斗创造者:学习中级Unity c#编码
Ben Tristem,Rick Davidson,Sam Pattuzzi,Gamev.TV团队
4.7 (8,490)
C#高级主题:准备技术访谈
Mosh Hamedani.
4.5 (15,119)
完整的c#大师级
Denis Panjuta,Tutorials.eu by Denis Panjuta
4.5 (12,024)
C#和.NET中的设计模式
Dmitri Nesteruk.
4.4 (7102)
畅销书
c#开发人员:用Visual Studio让你的编码速度翻倍
Mosh Hamedani.
4.5 (2,647)
畅销书
使用C#和.NET学习并行编程
Dmitri Nesteruk.
4.5 (2,035)
畅销书
Unity C#脚本:完成C#以获得Unity Game开发betwayapp下载安装
Raja Biswas,Charger Games
4.5 (1,388)
畅销书

更多C#课程

c#学生也会学习

赋予你的团队。引领行业。

通过Udemy为Business获取组织的在线课程和数字学习工具库的订阅。

请求演示