简说VB循环语句

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

循环结构是指在一定条件下多次重复执行一组语句。VB中提供了两种循环语句,它们是For 语句和Do语句。

1. For循环语句

如果己知某一段代码需要重复执行的次数,可以使用For循环语句。该语句的一般形式如下:

For<循环变量>=<初值>To<终值>[Step<步长>]

<语句块>

[Exit For]

Next<循环变量>

例如:

For i=l To 8 Step1

Print “这是文本”&i

Next i

该段代码的功能是在窗体上显示8行文本,如图3.16所示。如果不采用循环结构,则需要使用8条Print语句来实现相同的功能。

For语句中的循环变量必须是数值型,初值、终值以及步长则是具体的数值

For…next

步长用来指定循环变量每次的增量,当所有循环体中的语句都执行后,循环变量就会自动增加一个步长。默认的步长为1.For语句的执行流程如图3.17所示。

具体执行流程为:

(1)将初值赋给循环变量。

(2)判断循环变量的取值是否在终值范围内否则结束循环,执行Next的下一条语句。

(3)将循环变量的取值自动增加一个步长,然后回转到步骤(2)继续执行。

若是则执行循环体内的语句,循环中可以在任何位置放置任意个Exit FOr语句,该语句的作用是退出循环,转到Next语句的下一条语句。Exit For语句经常在条件判断之后使用,例如在If…Then语句之后。

例如,修改上例如下:

For I=1 To 10

For J=1 To 10

For K= 1 To 10

....

Next K

Next J

Next I

实例3.3打印九九乘法表

本例讲解怎样打印九九乘法表,如图3.18所示。九九乘法表的打印看起来很烦琐,但是如果使用嵌套循环,则问题变得非常简单。

打开【代码】窗口,编写窗体的Click事件过程如下:

Private Sub form_Click()

Print“----------------------------

九九乘法表----------------------”

Print

For i=1 To 9

For j=1 To i

s=i*j

Print j & “X”& i & “=” & s

Next j

Print

Next i

End Sub

在该段代码中,首先使用Print方法打印出标题和一个空行。然后使用了一个两重的嵌套循环结构。关于Print方法的使用细节请参见下一章。

2.Do循环语句

如果不知道某一段代码需要重复执行的次数,可以使川Do循环语句0该语句有两种基本形式:

(1)Do While<表达式>

循环体

[Exit Do]

Loop

这种格式的Do循环先判断条件,后执行循环体。与I f…Then语句类似,While子句的<表达式>一般是关系表达式或逻辑表达式,也可以是算术表达式。如果表达式的值不为零(True),即条柞为真,则执行循环体。如果表达式的值为零〔False),即条件为假,则终止循环。其流程如图3.19所示。

例如,通过下列代码,可以求出2460和345的最大公约数。

Private Sub Form_Click()

m=2460:n=345

Dim s As Single

Do while(n<>0)

s=m Mod n

m=n

n=s

Loop

Print“最大公约数=” & m

End Sub

在Do…Loop中可以在任何位置放置任意个数的Exit Do语句,随时跳出Do-Loop循环。Exit Do通常用于条件判断之后,例如If…then,在这种情况下,Exit Do语句将控制权转移到紧接在Loop命令之后的语句。

如果Exit Do使用在嵌套的Do…Loop语句中,则Exit Do会将控制权转移到Exit Do所在位置的外层循环。

While子句也可以出现在Loop语句后,形式如下:

Do.

循环体。

[Exit Do].

Loop While<表达式>.

这种格式的特点是先执行循环体,后判断条件。也就是说第一次进入循环是无条件的。循环体至少会被执行一次,其流程如图3.20所示。而如果While子句出现在Do后,则可能一次也不执行。

(2)Do Until<表达式>.

循环体。

[Exit Do].

Loop.

将While子句换成Until子句后,情况正好相反。只有当表达式的值不为O(ture),即条件为真时才终止循环,否则继续循环。

Until子句也可以出现在助Loop的后面,也表示先执行循环体,后判断条件。

相关文档
最新文档