- 计算机程序设计教程
- 计算机程序设计 - 首页
- 计算机程序设计 - 概述
- 计算机程序设计 - 基础
- 编程 - 环境
- 编程 - 基本语法
- 编程 - 数据类型
- 计算机程序设计 - 变量
- 计算机程序设计 - 关键字
- 计算机程序设计 - 运算符
- 计算机程序设计 - 决策
- 计算机程序设计 - 循环
- 计算机程序设计 - 数字
- 编程 - 字符
- 计算机程序设计 - 数组
- 计算机程序设计 - 字符串
- 计算机程序设计 - 函数
- 计算机程序设计 - 文件 I/O
- 计算机程序设计 - 总结
- 计算机程序设计资源
- 编程 - 快速指南
- 计算机程序设计 - 资源
- 编程 - 讨论
计算机程序设计 - 循环
让我们考虑这样一个情况,您希望打印Hello, World!五次。这是一个简单的 C 程序来完成相同操作:
#include <stdio.h> 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() 语句写一千次。几乎所有编程语言都提供了一个名为循环的概念,它有助于执行一个或多个语句直至达到所需的次数。所有高级编程语言都提供各种形式的循环,这些循环可用于重复执行一个或多个语句。
让我们使用while 循环编写上述 C 程序,稍后我们将讨论此循环的工作原理
#include <stdio.h> 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 ....*/ }
以上代码可以用流程图表示,如下所示:
关于 while 循环,需要注意以下几点:
while 循环以关键字while开头,后跟用 ( ) 包裹的条件。
此外,在 while() 语句之后,您将拥有用花括号{...}括起来的循环体。
while 循环体可以有一行或多行要重复执行的源代码。
如果 while 循环体只有一行,则可以使用花括号{...}是可选的。
while 循环不断执行其主体,直到给定的条件保持为真。一旦条件变为假,while 循环就会退出,并继续从 while 循环体之后的下一个语句执行。
条件通常是一个关系语句,其计算结果为真或假。等于零的值被视为假,任何非零值都像真一样工作。
do...while 循环
while 循环在执行主体部分中给出的任何语句之前检查给定条件。C 编程提供另一种形式的循环,称为do...while,它允许在检查给定条件之前执行循环体。它具有以下语法:
do { /*....do...while loop body ....*/ } while ( condition );
以上代码可以用流程图表示,如下所示:
如果您使用do...while循环编写上述示例,则Hello, World将产生相同的结果:
#include <stdio.h> 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 语句
当在循环内遇到break语句时,循环会立即终止,程序控制在循环后的下一个语句处恢复。C 中break语句的语法如下:
break;
break语句可以用流程图表示,如下所示:
以下是上述程序的变体,但它只打印三次 Hello World!后就会退出:
#include <stdio.h> 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!
continue 语句
C 编程语言中的continue语句在某种程度上类似于break语句。continue不是强制终止,而是强制进行循环的下次迭代,跳过中间的任何代码。C 中continue语句的语法如下:
continue;
continue语句可以用流程图表示,如下所示:
以下是上述程序的变体,但当变量的值等于 3 时,它将跳过打印:
#include <stdio.h> 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 编写的等效程序,它也支持while和do...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 编程中的break和continue语句的工作方式与它们在 C 编程中的工作方式完全相同。
Python 中的循环
以下是使用 Python 编写的等效程序。Python 也支持while和do...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 中的break和continue语句的工作方式与它们在 C 编程中的工作方式完全相同。