使用循环重复一组命令

要连续重复同一组命令,请使用一种循环结构。有几类循环可以使用。每种类型都可让您根据条件测试,以不同方式退出循环。

循环以及与循环有关的命令位于 程序编辑器 的 控制转移 菜单上。

当您插入其中一种循环结构时,其模板即会插入到光标位置。然后,您可以开始输入将在循环内执行的命令。

For...EndFor 循环

For...EndFor 循环使用计数器控制循环的重复次数。For 命令的语法为:

注意: 如果增量为负,结束值可以小于起始值。

For 变量, 下限, 上限 [, 步长]

 

À Á Â Ã

À

变量 作为计数器

Á

第一次执行 For 时使用的计数器值

Â

当 变量 超过此值时退出循环

Ã

以后每执行一次 For,计数器的增量(如果忽略可选值,则 步长 为 1。)

执行 For 时,会将 变量 值与 上限 值进行比较。如果 变量 没有超出 上限,即会执行循环;否则,控制语句将跳至 EndFor 后的命令。

注意: For 命令自动增加计数器变量的值,以便函数或程序在重复执行一定次数后退出循环。

在循环末尾 (EndFor),控制语句跳回 For 命令,其中的变量增加并与 上限 进行比较。

例如:

À

显示 0、1、2、3、4 和 5。

Á

显示 6。当 变量 增加到 6 时,就不执行循环。

注意: 您可以将计数器变量声明为局部变量,如果在函数或程序停止后不需要保存的话。

While...EndWhile 循环

只要指定的条件为真,While...EndWhile 循环就会重复命令块。While 命令的语法为:

While 条件

在执行 While 时,就会计算 条件。如果 条件 为真,就会执行循环;否则,控制语句将跳至 EndWhile 后的命令。

注意: While 命令不会自动改变条件。您必须包含允许函数或程序退出循环的命令。

在循环末尾 (EndWhile),控制语句将跳回 While 命令,在这里重新计算条件。

要开始执行循环,初始条件必须为真。

必须在 While 命令之前,设置条件中引用的任何变量。(您可以将值置于函数或程序中,也可以提示用户输入值。)
循环必须包含改变条件中值的命令,最终导致条件为假。否则,条件始终为真,函数或程序就不能退出循环(称为无限循环)。

例如:

À

初始设置 x。

Á

显示 0、1、2、3 和 4。

Â

增加 x。

Ã

显示 5。当 x 增加到 5 时,就停止执行循环。

Loop...EndLoop loops

Loop...EndLoop 构成无限循环,这将无穷无尽地执行。Loop 命令不含任何自变量。

通常,您要在循环中插入可让程序退出循环的命令。常用命令有:IfExitGotoLbl (标签)。例如:

À

If 命令会检查条件。

Á

x 增加到 6 时,退出循环并跳转到此处。

注意: Exit 命令从当前循环退出。

在本例中,If 命令可出现在循环的任何位置。

当 If 命令为:

循环为:

循环的开头

仅在条件为真时执行。

循环的末尾

已执行至少一次,并且在条件为真时重复执行。

If 命令可能也使用 Goto 命令将程序控制语句转移至指定的 Lbl(标签)命令。

立即重复循环

Cycle 命令立即将程序控制语句转至循环的下一次迭代(当前迭代完成之前)。此命令与 For...EndForWhile...EndWhileLoop...EndLoop 一起使用。

Lbl 和 Goto 循环

虽然 Lbl(标签)和 Goto 命令不是严格的循环命令,但他们可以形成无限循环。例如:

至于 Loop...EndLoop,该循环应该包含可让函数或程序退出循环的命令。