📜  计算机编程-循环

📅  最后修改于: 2021-01-18 06:24:00             🧑  作者: Mango


让我们考虑一下要打印Hello,World的情况。五次。这是一个简单的C程序来做同样的事情-

#include 

int main() {
   printf( "Hello, World!\n");
   printf( "Hello, World!\n");
   printf( "Hello, World!\n");
   printf( "Hello, World!\n");
   printf( "Hello, World!\n");
}

执行以上程序后,将产生以下结果-

Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!

这很简单,但是再次,当您要编写Hello,World时,让我们考虑另一种情况一千次。我们当然不能写一千遍printf()语句。几乎所有的编程语言都提供了一个称为loop的概念,它可以帮助执行一个或多个语句达所需的次数。所有高级编程语言都提供各种形式的循环,这些循环可用于重复执行一个或多个语句。

让我们在while循环的帮助下编写上述C程序,稍后,我们将讨论该循环的工作方式

#include 

int main() {
   int i = 0;
   
   while ( i < 5 ) {
      printf( "Hello, World!\n");
      i = i + 1;
   }
}

执行以上程序后,将产生以下结果-

Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!

上面的程序利用while循环,该循环被用来执行{….}中包含的一组编程语句。在这里,计算机首先检查给定条件,即变量“ a”是否小于5,如果发现条件为真,则进入循环体以执行给定语句。在这里,我们在循环体内有以下两个语句-

  • 第一个语句是printf()函数,它打印Hello World!

  • 第二个语句是i = i + 1 ,用于增加变量i的值

执行完循环主体中给出的所有语句后,计算机返回while(i <5)并再次检查给定条件(i <5),如果条件成立,则再次执行循环。重复此过程,直到给定条件保持为真为止,这意味着变量“ a”的值小于5。

总而言之,循环语句使我们可以多次执行一条语句或一组语句。下面给出的是大多数编程语言中循环语句的一般形式-

循环架构

本教程旨在向非程序员介绍编程的基本概念,因此让我们讨论C编程语言中可用的两个最重要的循环。一旦了解了这两个循环,就可以阅读C编程教程或参考书,并检查C中可用的其他循环及其工作方式。

while循环

C编程语言中可用的while循环具有以下语法-

while ( condition ) {
   /*....while loop body ....*/
}

上面的代码可以以流程图的形式表示,如下所示-

C中的while循环

关于while循环,需要注意以下要点-

  • while循环以关键字while开头,后跟()中包含的条件

  • 在while()语句之后,将循环主体括在花括号{…}中

  • while循环主体可以包含一行或多行源代码,以便重复执行。

  • 如果while循环的主体只有一行,则可以选择使用花括号{…}

  • while循环将继续执行其主体,直到给定条件成立为止。一旦条件变为假,while循环就会出现,并从while循环主体之后的下一条语句继续执行。

  • 条件通常是关系语句,其评估结果为true或false。等于零的值将被视为false,任何非零值都将与true一样。

do … while循环

while循环在执行主体部分中给出的任何语句之前检查给定条件。 C编程提供了另一种形式的循环,称为do … while ,它允许在检查给定条件之前执行循环主体。它具有以下语法-

do {
   /*....do...while loop body ....*/
} 
while ( condition );

上面的代码可以以流程图的形式表示,如下所示-

做...在C循环

如果您将使用do … while循环编写上述示例,那么Hello,World将产生相同的结果-

#include 

int main() {
   int i = 0;
   
   do {
      printf( "Hello, World!\n");
      i = i + 1;
   }
   while ( i < 5 );
}

执行以上程序后,将产生以下结果-

Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!

中断声明

当在循环内遇到break语句时,循环立即终止,程序控制在循环后的下一条语句处恢复。 C中break语句的语法如下-

break;

break语句可以以流程图的形式表示,如下所示-

c中断语句

以下是上述程序的一种变体,但是它将在打印Hello World之后发布!只有三遍-

#include 

int main() {
   int i = 0;
   do {
      printf( "Hello, World!\n");
      i = i + 1;
      
      if( i == 3 ) {
         break;
      }
   }
   while ( i < 5 );
}

执行以上程序后,将产生以下结果-

Hello, World!
Hello, World!
Hello, World!

继续声明

C编程语言中的continue语句的工作原理与break语句类似。不是强制终止,而是继续执行循环的下一个迭代,跳过之间的任何代码。 C中的continue语句的语法如下-

continue;

可以以流程图的形式表示continue语句,如下所示:

C继续声明

以下是上述程序的一种变体,但是当变量的值等于3时,它将跳过打印-

#include 

int main() {
   int i = 0;
   do {
      if( i == 3 ) {
         i = i + 1;
         continue;
      }
      printf( "Hello, World!\n");
      i = i + 1;
   }
   while ( i < 5 );
}

执行以上程序后,将产生以下结果-

Hello, World!
Hello, World!
Hello, World!
Hello, World!

Java中的循环

以下是用Java编写的等效程序,该程序也支持whiledo … while循环。以下程序打印“ Hello,World!是C编程的五倍-

您可以尝试执行以下程序以查看输出,该输出必须与以上示例生成的结果相同。

public class DemoJava {
   public static void main(String []args) {
      int i = 0;
   
      while ( i < 5 ) {
         System.out.println("Hello, World!");
         i = i + 1;
      }
   }
}

Java编程中的breakcontinue语句的工作方式与C编程中的工作方式完全相同。

Python的循环

以下是用Python编写的等效程序。 Python也支持whiledo … while循环。以下程序打印“ Hello,World!是C编程的五倍。在这里,您必须注意, Python并未在循环主体中使用花括号,而是仅使用语句的缩进来标识循环主体。

您可以尝试执行以下程序以查看输出。为了显示差异,我们使用了另一个print语句,该语句将在循环结束时执行。

i = 0

while (i < 5):
   print "Hello, World!"
   i = i + 1
print "Loop ends"

执行以上程序后,将产生以下结果-

Hello, World!
Hello, World!
Hello, World!
Hello, World!
Hello, World!
Loop ends

Python的breakcontinue语句的工作方式与C编程中的工作方式相同。