《VB程序设计第2版第5章课件》由会员分享,可在线阅读,更多相关《VB程序设计第2版第5章课件(55页珍藏版)》请在金锄头文库上搜索。
1、第第五五章章 选选择择结结构构程程序序设设计计第第5 5章章选择结构程序设计选择结构程序设计本章要点本章要点: 条件语句条件语句单行结构条件语句单行结构条件语句If.Then.Else .块结构条件语句块结构条件语句If.ThenEndIf多分支选择语句多分支选择语句Select Case.End Select多分支选择转移语句多分支选择转移语句OnGoTo特点特点: 根据条件是否成立,决定程序的执行分支根据条件是否成立,决定程序的执行分支1VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计引言引言 顺序结构程序的执行次序是按语句的先后排列顺序结构程序的执行次序是按语句的先
2、后排列次序依次执行的,然而,计算机在处理实际问题次序依次执行的,然而,计算机在处理实际问题时,往往需要根据条件是否成立,决定程序的执时,往往需要根据条件是否成立,决定程序的执行方向,在不同的条件下,进行不同的处理。假行方向,在不同的条件下,进行不同的处理。假如遇到这样一个问题:如遇到这样一个问题:Y=|x| x0lnx x0 在输入变量在输入变量x的值之后,需根据的值之后,需根据x的不同取值范的不同取值范围做不同的处理,使用顺序结构的程序无法解决围做不同的处理,使用顺序结构的程序无法解决这一问题的。本章将介绍解决此类问题的四种语这一问题的。本章将介绍解决此类问题的四种语句结构。句结构。2VB程
3、序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计5.1 单行结构条件语句单行结构条件语句1. 格式格式 If Then Else 2. 功能功能 如果如果 成立,则执行成立,则执行 否则执行否则执行 T语句组语句组1条件条件语句组语句组2F3VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计3. 说明说明(1) 可以是:可以是: n关系表达式关系表达式n布尔表达式布尔表达式n数值表达式:数值表达式:0为为False;非非0为为Truen字符串表达式:字符串表达式: 0为为False;非非0为为True(2) 可以没有可以没有Else部分,这时必须有部分,这时
4、必须有 。T语句组语句组1条件条件F 例例: If Xaaa Then Print X4VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计(3) 、: 可以有多条语句,各语可以有多条语句,各语句之间用冒号隔开。句之间用冒号隔开。例例: If N0 Then A=A+B:B=B+A Else A=A-B:B=B-A(4) 应应作作为为一条一条语语句句书书写。如果写。如果语语句太句太长长需要需要换换行,行,必必须须在折行在折行处处使用使用续续行符号行符号。(5) 无论条件是否成立,都具有共同出口无论条件是否成立,都具有共同出口例例: If X = 0 Then X = 1 +
5、X Else X = 5 - X Y = 1 - X Print Y=; Y 若若 X=2 则打印则打印 Y=-2 若若 X=-2 则打印则打印 Y=-6共同出口共同出口(6) 单行结构条件语句可以嵌套单行结构条件语句可以嵌套 IF . THEN.IF . THEN .ELSE .ELSE5VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计【例【例5-1】设界面如下图所示,用文本框输入】设界面如下图所示,用文本框输入x的值,的值,单击单击“计算计算Y”按钮时,根据以下公式计算按钮时,根据以下公式计算y的值。的值。|x| x0lnx x0y=Command1Text1Labe
6、l36VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计分析:分析:本例需要输入本例需要输入x,根据根据x的值决定的值决定y的的值,然后输出值,然后输出y的值,的值,该计算过程可以用流该计算过程可以用流程图表示:程图表示:lnxyT|x|yx0F输入输入x的值的值输出输出y的值的值Private Sub Command1_Click() X = Val(Text1.Text) If X 0 Then Y = Log(X)Label3.Caption = Y程序段程序段2:X = Val(Text1.Text)Y = Log(X)If X 0,Y0X0,Y0第二象限第二象限X
7、0X0第三象限第三象限X0,Y0X0,Y0,Y0,Y0X0FY0Y0F输入输入X,YX,Y的值的值输出:该点输出:该点不在任何象限不在任何象限Y0Y0T输出:输出:在第一象限在第一象限输出:输出:在第四象限在第四象限输出:输出:在第二象限在第二象限输出:输出:在第三象限在第三象限FT10VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计 设运行时单击命令按钮设运行时单击命令按钮Command1进行判断,进行判断,并将结果直接打印在窗体上,并将结果直接打印在窗体上,Command1的的Click事件过程如下:事件过程如下:Private Sub Command1_Click(
8、) X = Val(Text1.Text): Y = Val(Text2.Text) If X = 0 Or Y = 0 Then _ Print 不在任何象限内不在任何象限内: Exit Sub If X 0 Then If Y 0 Then Print IN A Else _ Print IN D Else If Y 0 Then Print IN B _ Else Print IN C End Sub11VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计5.2 块结构条件语句块结构条件语句1.格式格式 If Then ElseIf Then ElseIf Then E
9、lse End If12VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计2. 功能功能TTTF条件条件1 1语句组语句组1 1语句组语句组2 2条件条件2 2F条件条件n n语句组语句组n nF语句组语句组n+1n+113VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计3. 说明说明1) 整个块结构必须以整个块结构必须以If语句开头,语句开头,End If语句结语句结束束2) 除了第一行的除了第一行的If语句和最后一行的语句和最后一行的End If语句语句是必须的以外,是必须的以外,ElseIf子句和子句和Else子句都是可子句都是可选的。选的。3)
10、 两种常见的简化形式两种常见的简化形式:形式一:形式一:If Then Else End If形式二:形式二:If Then End If14VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计【例【例5-3】将例】将例5-2改成用块结构条件语句实现。改成用块结构条件语句实现。Private Sub Command1_Click() X = Val(Text1.Text) : Y = Val(Text2.Text) If X = 0 Or Y = 0 Then Print 该点不在任何象限内该点不在任何象限内 ElseIf X 0 And Y 0 Then Print 在第一
11、象限在第一象限 ElseIf X 0 Then Print 在第二象限在第二象限 ElseIf X 0 And Y 40时,打印时,打印HOT 30C40时,打印时,打印 WARM 20C30时,打印时,打印 ROOM TEMPERATURE 10C20时,打印时,打印 COOL 0 40 Then Label2.Caption = HOT ElseIf C 30 Then Label2.Caption = WARM ElseIf C 20 Then Label2.Caption = ROOM TEMPERATURE ElseIf C 10 Then Label2.Caption = COOL
12、 ElseIf C 0 Then Label2.Caption = COLD Else Label2.Caption = FREEZING End IfEnd Sub 17VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计4. 注意注意1) ElseIf不能写成不能写成Else If,即中间不能有空格。即中间不能有空格。2) 在书写时,可以将在书写时,可以将If语句、语句、ElseIf子句、子句、Else子子句、和句、和End If语句左对齐,而各语句组向右缩语句左对齐,而各语句组向右缩进若干空格,以使程序结构更清楚。进若干空格,以使程序结构更清楚。3) 严格按格式要求书写
13、,不可随意换行或将两行严格按格式要求书写,不可随意换行或将两行合并成一行。例如,对于条件结构:合并成一行。例如,对于条件结构: If x = 0 Then y = 1 Else y = 2 End If 以下两种写法都是错误的:以下两种写法都是错误的: 写法一:写法一:If x=0 Then y=1Else y = 2End If写法二:写法二:If x=1 Then y=10 Else y = 20End If18VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计5.3 多分支选择语句多分支选择语句1. 格式格式 Select Case Case Case Case El
14、se End Select2. 功能功能: 根据测试表达式的值根据测试表达式的值,按顺序匹配按顺序匹配Case后的后的表达式表达式,如果匹配成功如果匹配成功,则执行该则执行该Case下的语句块下的语句块,然后转到然后转到End Select语句之后继续执行。语句之后继续执行。19VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计语句组语句组n+1n+1TTTF匹配匹配表达式表表达式表1语句组语句组1 1语句组语句组2 2F语句组语句组n nF匹配表达式匹配表达式表表2匹配表达式匹配表达式表表n多分支选择语句的功能流程图多分支选择语句的功能流程图: :20VB程序设计第2版第
15、5章第第五五章章 选选择择结结构构程程序序设设计计3. 说明说明 1) : 数值或字符表达式数值或字符表达式 2) Case 后的后的 可以为如下形式可以为如下形式: 表达式表达式1,表达式表达式2. 如如: Case 1 , 3 , 5 表达式表达式1 TO 表达式表达式2 如如: Case 10 TO 30 Case A TO Z Is 如如: Case Is = 10 Case Is = 0 与与 Case 0 相同相同 且三种形式可以混用且三种形式可以混用,如如: Case Is -5 , 0 , 5 To 10021VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计
16、计Y=ex+e-x x0【例【例5-5】按以下公式求分段函数按以下公式求分段函数y的值。的值。Text1Text2Command1 设运行时从文本框设运行时从文本框Text1输入输入x的值,单击命令的值,单击命令按钮按钮Command1计算计算Y的值,结果显示于文本框的值,结果显示于文本框Text2中,界面如下:中,界面如下:22VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计命令按钮命令按钮Command1的的Click事件过程如下:事件过程如下:Private Sub Command1_Click() X = Val(Text1.Text) 输入输入X的值的值 Sel
17、ect Case X 为为X Case Is 0 Y = Log(X) / Log(10) End Select Text2.Text = Format(Y, 0.000000)End Sub23VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计4. 注意注意1) 的类型应与各的类型应与各Case后的表达式类后的表达式类型一致。型一致。2) 不能在不能在Case后的表达式中使用后的表达式中使用中中的变量。例如:的变量。例如: Select Case X Case X 0 在这里使用了变量在这里使用了变量X,是错误的是错误的 Y = Log(X) / Log(10) End
18、Select24VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计3) 只能是一个变量或一个表达式,只能是一个变量或一个表达式,而不能是变量表或表达式表。例如,检查变量而不能是变量表或表达式表。例如,检查变量X1、X2、X3之和是否小于零,之和是否小于零, 不能写成:不能写成: Select Case X1,X2,X3 错误写法错误写法 Case X1+X2+X3 0 End Select 而应该写成:而应该写成: Select Case X1+X2+X3 正确写法正确写法 Case Is 0 End Select25VB程序设计第2版第5章第第五五章章 选选择择结结构构程
19、程序序设设计计4) 不要在不要在Case后直接使用布尔运算符来表示条件。后直接使用布尔运算符来表示条件。 例如,要表示条件例如,要表示条件0X0 And Is100 使用了使用了And, 是错误的是错误的 End Select 对于较复杂的条件,可以用块结构条件语句来对于较复杂的条件,可以用块结构条件语句来实现,而有些条件完全可以转换成实现,而有些条件完全可以转换成Case语句允许语句允许的几种形式之一。的几种形式之一。26VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计【例【例5-6】某运输公司对用户计算运费,距离越远,】某运输公司对用户计算运费,距离越远,每公里运费越
20、低,计算标准如下每公里运费越低,计算标准如下: 距离距离250km 没有折扣没有折扣 250km距离距离500km 2%折扣折扣 500km距离距离1000km 5%折扣折扣 1000km距离距离2000km 8%折扣折扣 2000km距离距离3000km 10%折扣折扣 3000km距离距离 15%折扣折扣分析:分析:设每公里每吨货物的基本运费为设每公里每吨货物的基本运费为Price,货货物重为物重为Weight,运输距离为运输距离为Distance,折扣为折扣为Discount,则总运费则总运费Freight的计算公式为的计算公式为:Freight= Price * Weight * Di
21、stance * (1 - Discount)27VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计设计界面如下图:设计界面如下图:Text1Text2Text3Text4Command128VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计Command1的的Click事件过程如下事件过程如下:Private Sub Command1_Click() Price = Val(Text1.Text) Weight = Val(Text2.Text) Distance = Val(Text3.Text) Select Case Distance Case
22、Is 250 Discount = 0 Case Is 500 Discount = 0.02 Case Is 1000 Discount = 0.0529VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计 Case Is 2000 Discount = 0.08 Case Is 3000 Discount = 0.1 Case Else Discount = 0.15 End Select Freight = Price * Weight * Distance * (1 - Discount) Text4.Text = FreightEnd Sub30VB程序设计第2版第
23、5章第第五五章章 选选择择结结构构程程序序设设计计1. 格式格式 On GoTo |2. 功能功能 根据根据的值,把控制权转移到的值,把控制权转移到或或指定的语句中的一个去执行。指定的语句中的一个去执行。 具体过程是:先计算具体过程是:先计算的值,并将其四的值,并将其四舍五入为一个整数,然后根据该整数值决定转移舍五入为一个整数,然后根据该整数值决定转移到第几个标号或行号所指定的语句去执行。如果到第几个标号或行号所指定的语句去执行。如果的值为的值为1,则转到第一个标号或行号所,则转到第一个标号或行号所指定的语句行去执行;如果指定的语句行去执行;如果的值为的值为2,则转到第二个标号或行号所指定的语
24、句行去执行,则转到第二个标号或行号所指定的语句行去执行,以此类推。以此类推。5.4 多分支选择转移语句多分支选择转移语句OnGoTo31VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计3. 说明说明1) 的值应在的值应在0255之间,当之间,当的值小于的值小于0或大于或大于255时会出错。时会出错。2) 的值应该在的值应该在1到标号或行号列表项目到标号或行号列表项目个数之间。当表达式的值为个数之间。当表达式的值为0或大于列表项目或大于列表项目个数时,控制权会转移到个数时,控制权会转移到On.GoTo之后的语之后的语句。句。3) 可以在同一个列表中混合使用标号和行号。可以在
25、同一个列表中混合使用标号和行号。“标号标号”是一个以冒号结尾的标识符;是一个以冒号结尾的标识符;“行号行号”是一个整型数。是一个整型数。32VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计【例【例5-7】用输入框输入】用输入框输入15之间的学生成绩,将之间的学生成绩,将其转换为其转换为4个成绩等级:个成绩等级: 1、2分分 不及格不及格 3分分 及格及格 4分分 良良 5分分 优优设运行时单击设运行时单击Command1开始输入并转换。开始输入并转换。代码如下:代码如下:Private Sub Command1_Click() X = Val(InputBox(请输入分数
26、请输入分数15)33VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计 On X GoTo 10, 10, A1, A2, A3 MsgBox 输入有误输入有误 GoTo B1 10 MsgBox 不及格不及格 GoTo B1 A1: MsgBox 及格及格 GoTo B1 A2: MsgBox 良好良好 GoTo B1 A3: MsgBox 优秀优秀 B1:End Sub无条件无条件GoTo语句:语句:GoTo |功能:无条件地转到功能:无条件地转到或或指定的指定的位置执行。位置执行。34VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计 如果在条件成
27、立或不成立的情况下要继如果在条件成立或不成立的情况下要继续判断其他条件,则可以使用嵌套的条件续判断其他条件,则可以使用嵌套的条件语句来实现,也就是在语句组中再使用另语句来实现,也就是在语句组中再使用另一个条件语句。一个条件语句。5.5 条件语句的嵌套条件语句的嵌套35VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计块结构条件语句的嵌套示例:块结构条件语句的嵌套示例:If A = 1 Then If B = 0 Then Print *0* ElseIf B = 1 Then Print *1* End IfElseIf A = 2 Then Print *2*End If
28、36VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计多分支选择语句的嵌套示例:多分支选择语句的嵌套示例:Select Case A Case 1 Select Case B Case 0 Print *0* Case 1 Print *1* End Select Case 2 Print *2*End Select37VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计 多多分分支支选选择择语语句句与与块块结结构构条条件件语语句句的的互互相相嵌嵌套套示例:示例:Select Case A Case 1 If B = 0 Then Print *0* El
29、seIf B = 1 Then Print *1* End If Case 2 Print *2*End Select38VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计【例【例5-8】求一元二次方程】求一元二次方程ax2+bx+c=0的解的解 。 分析分析: : 1) 如果如果a=0,则不是二次方程,此时如果则不是二次方程,此时如果b=0,则则提示重新输入系数;如果提示重新输入系数;如果b 0,则则: x=-c/b2) 如果如果a 0,且且b2-4ac=0,则有两个相等的实根则有两个相等的实根3) 如果如果a 0,且且b2-4ac0,则有两个不等的实根则有两个不等的实根
30、4) 如果如果a 0,且且b2-4ac 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) Case Is 0 A1 = -B / (2 * A) A2 = Sqr(Abs(Delta) / (2 * A) 42VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计 Print X1=; Format(A1, 0.000)
31、; +; _ Format(A2, 0.000); i CurrentX = 600 CurrentY = 1300 Print X2=; Format(A1, 0.000); -; _ Format(A2, 0.000); i End SelectEnd Sub43VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计【例【例5-9】设计一个口令检测程序,界面如下图,当】设计一个口令检测程序,界面如下图,当用户输入的口令正确时,显示用户输入的口令正确时,显示“恭喜!您已成功进恭喜!您已成功进入本系统入本系统”,否则,显示,否则,显示,“口令错!请重新输入口令错!请重新输入”。
32、如果连续两次输入了错误口令,在第三次输入完口如果连续两次输入了错误口令,在第三次输入完口令后则显示一个消息框,提示令后则显示一个消息框,提示“对不起对不起,您不能使用您不能使用本系统本系统”,然后结束程序的执行。,然后结束程序的执行。Text1Label244VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计分析:分析:界面中用一个文本框界面中用一个文本框Text1接受口令,接受口令,Text1的属性设置如下:的属性设置如下: PasswordChar:* MaxLength:6 要求运行时在用户输入完口令并按回车键时对要求运行时在用户输入完口令并按回车键时对口令进行判断,
33、因此本例使用了文本框口令进行判断,因此本例使用了文本框Text1的的KeyUp事件过程事件过程,当焦点在文本框时,松开键盘,当焦点在文本框时,松开键盘任一键后产生任一键后产生KeyUp事件,同时返回按键代码事件,同时返回按键代码KeyCode。回车键的回车键的KeyCode为为13,所以程序首,所以程序首先判断如果用户在先判断如果用户在Text1中按下了回车键,表示口中按下了回车键,表示口令输入完,再判断口令是否正确。令输入完,再判断口令是否正确。 Text1的的KeyUp事件过程如下:事件过程如下:45VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计Private Su
34、b Text1_KeyUp(KeyCode As Integer, _ Shift As Integer) Static I As Integer 保存输入错误口令的次数保存输入错误口令的次数 If KeyCode = 13 Then 如果按下的键为回车键如果按下的键为回车键 If UCase(Text1.Text) = HELLO Then Label2.Caption = 恭喜恭喜!,您已成功进入本系统您已成功进入本系统 ElseIf I = 0 Or I = 1 Then I = I + 1 Label2.Caption = 口令错口令错!,请重新输入请重新输入 Text1.SelSta
35、rt = 0 Text1.SelLength = Len(Text1.Text) Else MsgBox 对不起对不起,您不能使用本系统您不能使用本系统: End End If End IfEnd Sub46VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计 【例【例5-10】设计一个四则运算的自我练习应用程序,设计一个四则运算的自我练习应用程序,界面如下图所示。界面如下图所示。 Text1Text4Text3Text2Label4Label247VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计要求要求: 1) 执行时,当在执行时,当在Text1中输入
36、一种运算符后,在标中输入一种运算符后,在标签签Label2中立即出现该运算符号。中立即出现该运算符号。2) 单击单击“出题出题”按钮可以产生两个按钮可以产生两个0,1000之间的之间的随机整数,这时由随机整数,这时由Text2、Label2和和Text3组成组成一个表达式。一个表达式。3) 可以通过单击可以通过单击“计算计算”按钮计算所生成的表达式按钮计算所生成的表达式的值。的值。4) 也可以由用户在文本框也可以由用户在文本框Text4中输入运算结果通中输入运算结果通过单击过单击“判断判断”按钮可以判断输入的运算结果是按钮可以判断输入的运算结果是否正确,然后在否正确,然后在Label4上显示上
37、显示“正确正确”或或“错误错误”。5) 单击单击“退出退出”按钮结束运行。按钮结束运行。48VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计1) 在在Text1中输入加、减、乘、除符号后中输入加、减、乘、除符号后,在在Label2中立即出现相应的运算符号。中立即出现相应的运算符号。 Private Sub Text1_Change() Label2.Caption = Text1.Text End Sub2) 单击单击“出题出题”按钮按钮Command1,生成两个生成两个0,1000之间的随机整数。之间的随机整数。 Private Sub Command1_Click()
38、 Randomize Text2.Text = Int(Rnd * 1001) Text3.Text = Int(Rnd * 1001) Text4.Text= End Sub49VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计3) 单击单击“计算计算”按钮按钮Command2得出得出Text4的值。的值。Private Sub Command2_Click() If Label2.Caption = + Then Text4.Text = Val(Text2.Text) + Val(Text3.Text) ElseIf Label2.Caption = - Then T
39、ext4.Text = Val(Text2.Text) - Val(Text3.Text) ElseIf Label2.Caption = * Then Text4.Text = Val(Text2.Text) * Val(Text3.Text) ElseIf Label2.Caption = / Then Text4.Text = Val(Text2.Text) / Val(Text3.Text) Else MsgBox 运算类型错,请重输运算类型错,请重输, , 警告警告 Text1.SetFocus: Text1.SelStart = 0 Text1.SelLength = Len(Te
40、xt1.Text) End IfEnd Sub50VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计4) Text4的内容也可以由用户输入,通过单击的内容也可以由用户输入,通过单击“判判断断”按钮按钮Command3判断输入结果是否正确。判断输入结果是否正确。 Private Sub Command3_Click() Select Case Label2.Caption Case + If Text4.Text=Val(Text3.Text)+Val(Text2.Text) Then Label4.Caption = 正确正确 Else Label4.Caption = 错
41、误错误 End If51VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计Case - If Text4.Text=Val(Text2.Text)-Val(Text3.Text) Then Label4.Caption = 正确正确 Else Label4.Caption = 错误错误 End IfCase * If Text4.Text=Val(Text2.Text)*Val(Text3.Text) Then Label4.Caption = 正确正确 Else Label4.Caption = 错误错误 End If52VB程序设计第2版第5章第第五五章章 选选择择结结
42、构构程程序序设设计计 Case / If Text4.Text=Val(Text2.Text)/Val(Text3.Text) Then Label4.Caption = 正确正确 Else Label4.Caption = 错误错误 End If Case Else a=MsgBox(运算类型错,请重输运算类型错,请重输, , 警告警告) Text1.SetFocus Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text) End SelectEnd Sub注注: 因实数的不精确表示,除法判断条件应写成因实数的不精确表示,除法判断条件应写成:
43、 Abs(Val(Text4.Text) - Val(Text2.Text) / Val(Text3.Text) 0.000001 53VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计本章小结本章小结1.单行结构条件语句单行结构条件语句 If Then Else 2. 块结构条件语句块结构条件语句 If Then ElseIf Then ElseIf Then Else End If54VB程序设计第2版第5章第第五五章章 选选择择结结构构程程序序设设计计3. 多分支选择语句多分支选择语句 Select Case Case Case Case Case Else End Select4. 多分支选择转移语句多分支选择转移语句 On GoTo |55VB程序设计第2版第5章