当前位置:首页 > vb教案参考1
【举例1】实现两个数X、Y大小比较,将大者存放在X中
if x t=x x=y y=t ?两数交换用到临时变量t,使用“交换三角形” end if (二) If?Then?Else(双分支结构) ⒈语句形式 ⑴形式一 If <表达式> Then 语句块1(一条或多条语句) Else 语句块2(一条或多条语句) End If ⑵形式2 if <表达式> Then <语句1> Else <语句2> ⒉说明: 表达式:一般为关系表达式、逻辑表达式或算术表达式。表达式值非零为True,否则为False 功能:若表达式为True,执行语句块1,否则执行语句块2 ⒊流程图 【举例2】计算 语句块1 语句块2 T 条件表达式 F y?sinx?x2?1,x?0y?cosx?x?3x,x?03 if x<>0 then else y=cos(x)-x^3+3*x end if y=sin(x)+sqr(x*x+1) 21 (三) If?Then?ElseIf(多分支结构) ⒈语句形式 If <表达式1> Then 语句块1(一条或多条语句) 语句块2(一条或多条语句) …Else 语句块n+1(一条或多条语句) ElseIf <表达式2> End If⒉说明: 表达式:一般为关系表达式、逻辑表达式或算术表达式。表达式值非零为True,否则为 False 功能:根据表达式n,确定执行语句块n,VB测试条件的顺序为表达式1、表达式2…,一旦遇到表达式值为非零(非零),则执行该条件下的语句块。 ⒊流程图 语句块1 【举例3】 If strC>=”a” And strC<=”z” Or strC>=”A” And strC<=”Z” then print strC & “是字母” print strC & “是数字” print strC & “是其他字符” ElseIf strC>=”0” And strC<=”9” Then Else End if (四) If?语句的嵌套 If语句的嵌套:是指If或Else后面的语句块中又包含If语句。语句形式如下: If <表达式> Then If <表达式> Then …End If …End if 注意:对嵌套语句,为增强可读性,书写时使用缩进方式;End If与最近的If语句配对, 语句块2 语句块n 语句块n+1 表达式n 表达式2 表达式1 22 除If语句一行书写外,其他IF与End If配对 【举例4】电信收费付费(实习指导P7页) Private Sub Text2_KeyPress(KeyAscii As Integer) Dim mins, hous, M As Single If KeyAscii = 13 Then mins = DateDiff(\ Text3.Text = Format(mins, \分钟\ If mins < 3 Then M = 0.5 Else M = 0.5 + (mins - 3) * 0.15 End If hous = Val(Mid(Text1, 1, 2)) If hous < 7 Or hous > 19 Then M = M * 0.5 End If Text4.Text = Format(M, \元\ End If End Sub (五) Select ?Case 语句(情况语句) 多个If语句嵌套很容易造成If语句出错如If与End if的配对问题,为此,VB提供了Select Case语句,用于实现多分支语句情况,尤其是具有三个分支以上的程序,优越性更加突显。使用Select 语句可使程序比使用if语句,可读性进一步增强。 ⒈语句形式 Select Case 变量或表达式 Case 表达式列表1 语句块1 语句块2 … [Case Else Case 表达式列表2 语句块n+1 End Select ⒉说明: 表达式列表:是数值型或字符串表达式,与“变量或表达式”的类型必须相同,有以下四种形式: (1) 表达式,用于与某个值比较; (2) 一组枚举表达式,用逗号分隔; (3) 表达式1 To 表达式2; (4) IS关系运算符表达式 第一种形式与某个值比较,后三种与设定值的范围比较。每个Case语句后可跟多个表达式,之间用逗号隔开。如: Case 1,3,5,7,8,10,12 23 Case 2,4,6,8,is>10 Select Case <变量或表达式>是多分支结构的另一种表示形式,其作用是根据变量或表达式的值与Case子句中的值进行比较,决定执行哪一组语句块。相比之下,Select Case语句比If …Then…Else语句的可读性更好 ⒊流程图 【举例5】购物,根据客户消费多少进行打折。 Private Sub Command1_Click() Dim x, y As Single x = Val(Text1.Text) If x >= 0 Then Select Case x Case Is < 1000 y = x Case Is < 2000 y = 0.9 * x Case Is < 3000 y = 0.8 * x Case Else y = 0.7 * x End Select Label1.Caption = y Else MsgBox \ n F 语句块n+1 表达式列表2 F 表达式列表T 语句块n 表达式列表1 F T 语句块2 T 语句块1 24
共分享92篇相关文档