文档介绍:第五章循环结构
教学内容
循环语句
Timer控件和滚动条的使用
教学目标
掌握循环语句
掌握Timer控件和滚动条
循环语句
主要提供了三种循环控制方式:
 
For…Next
While…End While
Do…Loop
For…Next循环
For循环语句通常用于将一组语句重复执行指定的次数。
For循环的重复次数,可以由设定一个计数变量及其上、下限来决定。
语句形式如下(方括号中的内容为可选项):
For 循环变量= 初值 To 终值[ Step 步长]
[ 语句块]
[ Exit For ]
[ 语句块]
Next [ 循环变量]
其中:
循环变量为必选项。其类型通常是 Integer,但也可以是支持大于号(>)、小于号(<) 和加号(+) 的任何基本数值类型。
步长,每次循环后循环变量的增量。一般为正,初值小于终值;若为负,这时初值大于终值;如果省略了该项,则步长的默认值为1。
语句块是放在 For 和 Next 之间的一条或多条语句,亦被称为循环体。它们将被执行指定的次数。
Exit For,当遇到该语句时,退出循环(无论是否执行完指定次数),执行 Next 语句后面的语句。
例如:编写一个计算正整数的阶乘的程序。对任意正整数K,K!符号代表阶乘表达式,我们有:
为了解决这个问题,可以用一个For循环中的循环变量表示K的变化范围,在循环体中计算当前K值的阶乘。新建工程Factorial,在窗体上添加一个Button和一TextBox控件。
为BtnStart按钮的click事件过程,添加下面的代码:
Private Sub BtnStart_Click(ByVal_ sender As , _
ByVal e As ) Handles
Dim lngResult As Long
Dim i As Integer
()
lngResult = 1
For i = 1 To 15
lngResult = lngResult * i
+= () + "!=" + () _
+ vbCrLf
Next
End Sub
阶乘程序的运行结果
如果一个三位数的个位数、十位数和百位数的立方和等于该数自身, 则称该数为水仙花数。编一程序求出所有的水仙花数。显然,水仙花数要在100~999的范围内去找。我们对于这个范围内所有的数一一检验其是否符合水仙花数的定义。项目的建立同上,代码如下:
Private Sub BtnStart_Click(ByVal sender As , _
ByVal e As ) Handles
Dim intMumber As Integer
Dim intHandred As Integer
Dim intTen As Integer
Dim intSingle As Integer
()
For intMumber = 100 To 999
intHandred = intMumber \ 100
intTen = (intMumber \ 10) Mod 10
intSingle = intMumber Mod 10
If intMumber = intHandred ^ 3 + intTen ^ 3 + intSingle ^ 3 Then
+= () + " = " + _
() + "^3 + " + () _
+ "^3 + " + () + "^3" + vbCrLf
End If
Next
End Sub
水仙花数的运算
While...End While 循环
While...End While 循环用于对一条件表达式进行计算,如果值为True,则执行循环体。每一次循环结束后,重新计算条件表达式。
While...End While与For循环的差别在于: For循环循环次数是不变的,执行一定次数后结束循环。While循环的循环次数依赖与条件表达式的值,在不同情况下循环次数不一样。While型循环结构使用While语句实现,语句形式如下:
While <条件表达式>
[语句块]
End