VB6程序设计
语句组] End Select
4.7.3 循环语句
1.For…Next语句
亦称计数循环,语法如下:
For 循环变量=初值 To 终值 [步长] 语句组
Next [循环变量]
例1:编写程序,使其能在窗体显示输入的6个整数和其中的最大数。 例2:在窗体中,单击“判别”按钮,出现一个输入框,在输入框中输入一个整数后,在窗体文本框中即显示该整数是否为素数的字样;单击“退出”按钮,可退出程序。
例3:用筛选法找出2到100之间的素数,并按一定的格式在窗体上显示出来。
程序代码:
Private Sub Form_Click()
Dim a(2 To 100) As Boolean, n As Integer, m As Integer For n = 2 To 100 a(n) = True Next
For n = 2 To 100 If a(n) Then
For m = n + 1 To 100
If m Mod n = 0 Then a(m) = False Next m End If Next n m = 0
For n = 2 To 100
If a(n) Then Print Tab(m * 8); n;: m = m + 1 If m = 5 Then Print: m = 0 Next n End Sub
例4:设计一个程序,启动后即能产生并显示10个随机二位正整数,单击窗体可将这10个数按从小到大的顺序显示。
程序代码:
Const N = 10
Dim a(1 To N) As Integer Private Sub Form_Activate() Dim m As Integer, k As Integer k = 0
For m = 1 To N
17
第四章 VB6编程基础
a(m) = 10 + Int(Rnd * 90) Print a(m); \ If k = 5 Then Print: k = 0 Next m Print End Sub
Private Sub Form_Click()
Dim m As Integer, k As Integer, T As Integer For m = 1 To N - 1 For k = 1 To N - m
If a(k) > a(k + 1) Then
T = a(k): a(k) = a(k + 1): a(k + 1) = T End If Next Next k = 0
For m = 1 To N
Print a(m); \ If k = 5 Then Print: k = 0 Next m Print End Sub
2.For Each…Next语句 亦称遍历循环
3.Do…Loop语句
有当型循环(While)和直到型循环(Until)两种 ? 当型循环
Do While 循环条件 语句组 Loop 或
Do
语句组
Loop While 循环条件 ? 直到型循环
Do Until 条件 语句组 Loop 或
Do
语句组
Loop Until 条件 注意:
18
VB6程序设计
? Do…Loop语句可以嵌套使用。如果Exit Do使用在嵌套的Do…Loop语
句中,则Exit Do会将控制权转移到外层循环。
? 在循环体中,或者有退出循环的Exit Do语句,或者有使循环向结束转
化的语句,防止陷入“死循环”。 4.While…Wend语句 语句如下:
While 条件 语句组 Wend
例5:已知自然对数的底数e的级数表示如下:
e?1?11!?1112!?3!?......?n!?......
利用上述公式求e,其中绝对值小于1E-8的项被忽略。 程序代码:
Private Function fac(n As Integer) As Single If n = 0 Then fac = 1 Else
fac = n * fac(n - 1) End If End Function
Private Sub Form_Click()
Dim e As Single, term As Single Dim m As Integer e = 1: m = 1 term = 1 / fac(m)
Do While Abs(term) >= 0.00000001 e = e + term m = m + 1
term = 1 / fac(m) Loop
Print \End Sub
4.7.4 其他控制语句
1.Go To语句 例:
Go To Line1 …… Line1: …… 注意:
19
第四章 VB6编程基础
? 本过程内无条件转移 ? 尽可能少用此语句 2.End语句
例:End、End Sub、End If、End With等 3.Exit语句
Exit Do、Exit For、Exit Sub、Exit Function等。
20