第四章  选择结构设计
双击滚屏  关闭窗口

 

4.3 多分支语句

 

多分支语句也称为情况语句,语法格式为:

Select Case 测试表达式

Case 表达式表 1

语句块 1

[Case 表达式表 2

语句块 2]

……

[Case Else

语句块 n]

End Select

“ 表达式表 ” 中的表达式必须与“测试表达式”的数据类型相同。“表达式表”通常是一个具体值,每一个值确定一个分支。还有三种方法可以确定设定值:

•  一组值(用逗号隔开),例如:

Case 1,3,5 表示条件在 1 , 3 , 5 三个数中取值

( 2 )表达式 1 TO 表达式 2 ,例如:

Case 60 To 表示条件取值范围为 60~80

(3) Is 关系式,例如:

Case Is<5 表示条件在小于 5 的范围内取值

[ 例 4.4] 输入学生成绩(百分制),判断该成绩的等级(优良、及格、不及格)。

( 1 )创建应用程序用户界面和设置对象属性。如图 4.3 所示。

                    

图 4.3 例 4.4 的运行界面

( 2 )程序代码如下:

Private Sub Command1_Click()

Dim score As Integer, temp As String

score = Val(Text1.Text)

temp = " 成绩等级为: "

Select Case score

Case 0 To 59

Label2.Caption = temp + " 不及格 "

Case 60 To 79

Label2.Caption = temp + " 及格 "

Case 80 To 100

Label2.Caption = temp + " 优良 "

Case Else

Label2.Caption = " 成绩出错 "

End Select

End Sub

[ 例 4.5] 设计程序,在窗体上显示以考题:

鸡免同笼,已知鸡和免总头数为 23 ,总脚数为 46 ,求鸡免各有多少?

再提供输入对话框由学生回答问题,然后使用消息对话框显示对答案的评判意见。

( 1 ) ( 1 )创建应用程序用户界面和设置对象属性。 如图 4.4 所示。


图 4.4 例 4.5 的运行界面

( 2 )使用窗体的装载事件过程 Form_Load ,将考题内容直接显示在窗体上,代码如下:

Private Sub Form_Load()

Show

Print

FontSize = 18

Print Spc(9); " 考一考你 "

FontSize = 13

Print

Print Spc(5); " 鸡免同笼,已知鸡和免的总头数为 23 , "

Print Spc(3); " 总脚数为 56 ,求鸡免各有多少? "

End Sub

( 3 )命令按钮的事件代码过程如下:

Private Sub Command1_Click()

h = 23: f = 56

j1 = (4 * h - f) / 2

t1 = (f - 2 * h) / 2

j2 = Val(InputBox(" 鸡的只数是多少 ?", " 请回答 "))

t2 = Val(InputBox(" 免的只数是多少 ?", " 请回答 "))

Select Case True

Case j1 = j2 And t1 = t2

MsgBox " 回答完全正确! "

Case j1 = j2

MsgBox " 鸡数回答正确,但免数不对! "

Case t1 = t2

MsgBox " 免数回答正确,但鸡数不对! "

Case Else

MsgBox " 回答错误! "

End Select

End Sub

 
双击滚屏  关闭窗口
 
版权所有数学与信息科学学院