第2节 选择结构 考试内容 考试要求 行IF语句 c 块IF语句 c 选择结构 选择结构也称为分支结构。VB选择语句能使程序在执行过程中,根据不同的判断结果,选择执行不同的处理。 一、行If语句 格式1: 条件成立时执行语句,否则不执行 格式2: 条件成立时执行语句1,否则执行语句2 二、块If语句 格式1: If 条件表达式 Then 语句块 End If 条件成立时执行语句块,否则不执行 格式2 If 条件表达式 Then 语句块1 Else 语句块2 End If 条件成立时执行语句块1,否则执行语句块2: 格式3: If 条件表达式1 Then 语句1 ElseIf 条件表达式2 Then 语句2 End If 条件1成立时执行语句1,条件1不成立时才判断条件2,条件2成立执行语句2 格式4: If 条件表达式1 Then 语句1 ElseIf 条件表达式2 Then 语句2 …… Else 语句0 End If 条件1成立时执行语句1,条件1不成立时才判断条件2,条件2成立执行语句2……以上条件都不成立,则执行语句0 一、行If语句 【典例1】 Dim x As Integer, y As Integer x = 1: y = 2 If x = y Then x = x + 2 Else y = y + 2 该程序段运行后x,y的值为( ) A.1,2 B.3,2 C.1,4 D.3,4 解析 本题主要考查行If语句。x=1,y=2,不满足If后面的判断表达式,执行Else后面的语句,y=2+2=4,x的值不变。 答案 C 【变式训练】 有如下VB程序段: Private Sub Command1_Click() Dim x As Integer, y As Integer Dim s As String s = “China” x = Len(s) y = Int(Sqr(x)) If x < > y Then x = x + y Else y = x + y y = x + y Label1.Caption = Str(y) End Sub 该程序执行后,标签Label1上显示的内容是( ) A.4 B.5 C.7 D.9 解析 本题主要考查行If语句。x=5,y = 2。If语句条件x < > y成立执行x = x + y 后x值变为7。执行语句y = x + y后y的值为9。 答案 D 【方法总结】 在行If语句中,所有的语句都在同一行。 二、块If语句 【典例2】 有如下VB程序段: Dim x As String, y As String x= “Boy-or-Girl?” y=Len(x) If y<11 Then Label1.Caption= “I am ”+Mid(x,1,3) Else Label1.Caption= “I am ”+Mid(x,8,4) End If 该程序段运行之后,标签Label中显示的内容为( ) A.Boy or Girl B. I am Boy C. I am Girl D. I am Boy or Girl? 解析 本题主要考查块IF语句。因为y=11,因此执行Else后面的语句。 答案 C 【变式训练】 有如下VB程序段: Private Sub Command1_Click() Dim ans As Integer, res As Integer Dim mystr As String mystr= “Visual” ans = 2 res = Len(mystr) If ans > res Then ans = ans + res Else res = ans + res EndIf Label1.Caption = Str(res) End Sub 程序执行后,在标签Label1上显示的内容是( ) A.4 B.5 C.7 D.8 解析 本题主要考查行IF语句。ans=2,res = 3。语句ans > res 不成立,执行res = ans + res后res值变为8。 答案 D 【方法总结】 块If语句中,If和ElseIf后面有判断语句,Else后面没有判断语句。注意块If语句要以End If结束。 1.有如下VB程序: a = 2: b = 5 If b >= a Then a = a + 2:b = b + 2 Text1.Text = Str(b) 程序运行后文本框Text1显示的内容为_____。 解析 本题主要考查行If语句。a = 2,b = 5。满足If后面的判断语句,执行Then后面的语句 a = a + 2=4,b = b + 2=7。 答案 7 2.有如下VB程序: a = 2: b = 5 If b >= a Then a = a + 2:b = a + b End If b = b * 2 Text1.Text = Str(b) 程序运行后文本框Text1显示的内容为_____。 解析 本题主要考查块If语句。a = 2,b = 5。满足If后 ... ...
~~ 您好,已阅读到文档的结尾了 ~~