VB的基本控制结构
MsgBox "输入的字符是数字" ElseIf Char >= "A" And Char <= "Z" Then
MsgBox "输入的字符是大写字母" ElseIf Char >= "a" And Char <= "z" Then
MsgBox "输入的字符是小写字母" Else
MsgBox "输入的字符是其它符号" End If
5.1 选择结构-If条件语句
3. 块状If语句
If <条件表达式> Then <语句块> End If
[例5.2]
If <条件表达式> Then <语句块1>
Else <语句块2>
End If
A = InputBox(“A值”) : B = InputBox("B值")
Print A, B
返回目录
MsgBox “西瓜重” & Weight & “公斤,单价” & _ Price & "元,应收瓜款" & Money & _
"元", , "计算西瓜款"
返回目录
5.1 选择结构-If条件语句
[例5.4]
Char = InputBox("输入一个字符", "测试字符值") If Char >= "0" And Char <= "9" Then
选择结构中要使用选择语句,有两 路分支和多路分支两种情况 ,对应 的选 择 语句 有 If语句 (两 路出 口 )和 Select Case语句(多路出口)。
返回目录
5.1 选择结构-If条件语句
1. If <表达式> Then <语句>
其中,<表达式>是一个条件表达式或逻辑表达式
例如,If Data>=90 Then Print “优秀
说明: ➢ ElseIf之间不要加空格。
➢ Else和位于其上方的最近的If配对
返回目录
5.1 选择结构-If条件语句
[例5.3]
Weight = InputBox("输入西瓜重量:", "计算西瓜款")
If Weight < 4 Then
Price = 1
ElseIf Weight <= 7 Then Price = 1.3
Text1
Label2
Private Sub Text1_KeyUp(KeyCode As Integer, _ Shift As Integer) Static I As Integer ' 保存输入错误口令的次数 If KeyCode = 13 Then ' 如果按下的键为回车键
If UCase(Text1.Text) = "HELLO" Then Label2.Caption = "恭喜!,您已成功进入本系统"
Else Price = 1.1
End If Money = Price * Weight
4公斤以下:1.00元/公斤 4至7公斤: 1.3元/公斤 超过7公斤: 1.1元/公斤
If Weight < 4 Then Price = 1 If Weight >= 4 And Price <= 7 Then Price = 1.3 If Weight > 7 Then Price = 1.1
例: Private Sub Command1_Click() Const Pi = 5.14 H = Val(Text1.Text) : R = Val(Text2.Text) Text3.Text = Pi * R ^ 2 * H
End Sub
5.1 选择结构
选择结构:当设定条件成立时执行 某些语句,条件不成立时则跳过这 些语句或执行其它的语句。
Case 10 MsgBox "满分", , "成绩分等"
Case 9 MsgBox "优秀", , "成绩分等"
Case 8 MsgBox "良好", , "成绩分等"
Case 7 MsgBox "一般", , "成绩分等"
Case 6 MsgBox "合格", , "成绩分等"
Case Else MsgBox "不合格", , "成绩分等"
If B = 0 Then MsgBox "系数为零,请重新输入" Text1.SetFocus Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text) Else X = -C / B Print "X="; Format(X, "0.000") End If Else
输出“优秀”
If Data Mod 3 = 0 Then MsgBox Data
End Sub
Data是3的倍数
返回目录
5.1 选择结构-If条件语句
2. If <表达式> Then <语句1> Else <语句2>
例如,Dim Data As Integer
Data = InputBox(“请输入成绩:") If Data >= 90 Then Print “优秀” Else Print “合格” Print "计算完毕"
Text1 Text2
Text3
Command1
Private Sub Command1_Click() A = Val(Text1.Text): B = Val(Text2.Text) C = Val(Text3.Text): Cls CurrentX = 600: CurrentY = 1100 If A = 0 Then
Case "a" To "z" MsgBox "字符是小写字母", , "测试"
Case "A" To "Z" MsgBox "字符是大写字母", , "测试"
Case Else MsgBox "字符是其它符号", , "测试"
End Select
单 击 窗 体
确 定
返回目录
应用举例
【例1】设计一个口令检测程序,界面如下图,当用户 输入的口令正确时,显示“恭喜!,您已成功进入 本系统”,否则,显示,“口令错!,请重新输 入”。如果连续两次输入了错误口令,在第三次输 入完口令后则显示一个消息框,提示“对不起,您不 能使用本系统”,然后退出整个应用程序。
上例的If 语句可以改写为:
If Data < 90 Then Print "合格" Else Print "优秀"
Yes
No
Data>=90?
输出“优秀”
输出“合格”
返回目录
输出“计算完毕”
说明 (1) <表达式> : 关系表达式、布尔表达式
数值表达式(0为False,非0为True) 字符串表达式("0"为False,非"0"为True) (2) <语句1>、<语句2>: 可以有多条语句,各语句之间 用冒号隔开。 (3)可以没有Else部分,这时必须有<语句1>。 例: If N>0 Then A=A+B:B= X<>"aaa" Then Print X
第5章 基本控制结构
学习目标:
掌握If 条件语句和Select Case选择语句 掌握For…Next和Do…Loop循环语句 掌握两重循环,了解多重循环
第5章 控制语句与程序调试
教学内容: 5.1 选择结构与相关语句 5.2 循环语句 5.3 其他语句
顺序结构: 执行过程的次序从上到 下,从左到右
Delta = B ^ 2 - 4 * A * C Select Case Delta
Case 0 Print "X1=X2="; Format(-B / (2 * A), "0.000")
Case Is > 0 X1 = (-B + Sqr(Delta)) / (2 * A) X2 = (-B - Sqr(Delta)) / (2 * A) Print "X1="; Format(X1, "0.000") CurrentX = 600: CurrentY = 1300 Print "X2="; Format(X2, "0.000")
If A < B Then T=A:A=B:B=T
End If Print A, B
5.1 选择结构-If条件语句
4. If语句嵌套
If语句嵌套使用可形成多分支的条件语句结构
If <条件表达式1> Then
<语句1>
ElseIf <条件表达式2> Then
<语句2>
Else <语句3>
End If
ElseIf I = 0 Or I = 1 Then I=I+1 Label2.Caption = "口令错!,请重新输入" Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text)