2格式说明 条件1>为真 语句体1 否则依次测试每个Ese语句 省淫个日如明轮佳的则简:句,若时有的条件都为 如果没有EseI子句,则块结构I语句变为: If<条件1Then 语句体1 Else 语句体n>] End if 述语 条件>为真 语句体1>,块f语句结束。否 则执行Ese子句。若省略Ese子笱,块形的件语句简化为 If<条件>Then 语句体1 End正f 例如 If C<O Then Text1.Text=Hello! world End正f
2 格式说明 ﹤条件1﹥为真,则执行﹤语句体1﹥,否则依次测试每个ElseIf语句, 若发现某个ElseIf语句的条件为真,则执行相应的语句;若所有的条件都为 假且存在Else子句,则执行Else后的﹤语句体n﹥ 。 如果没有ElseIf子句,则块结构If语句变为: If﹤条件1﹥Then ﹤语句体1﹥ [Else ﹤语句体n﹥] End If 对上述语句,若﹤条件﹥为真,则执行﹤语句体1﹥,块If语句结束。否 则执行Else子句。若省略Else子句,块形式的条件语句简化为: If﹤条件﹥Then ﹤语句体1﹥ End If 例如 If C<0 Then Text1.Text="Hello!world" End If
将上面的块形式条件语句中" End if"去掉,并把 ext1Text="Helo!word"语句放在"Then"的后面,则可以写成单行形 式,即: If C<0 Then Text 1. Text=Hellolworld 执行任何一个<语句体>后,退出该结构,继续执行 End If后面的语句 语句体1>….<语句体n>可以是一个语句,也可以是多个语句 块结构条件语句自上而下地对条件表达式进行判断,一旦发现某条件表 达式值为 就执行与之相关的语句,其余部分跳过。如果没有条件 成立,就执行最后的Ese子句,如果没有最后一条Ese,并且所有条件均不 成立,那么不执行任何操作 可和1块结条件评句是须要自的句和e行都是 语句中的<条件1 条件2>等都是逻辑表达式,或表达式的数据类 型是某种可隐式转换为 Boolean的数据类型,如对数值表达式,非0值表示 Tue,0值表示 False 块形式的条件语句可以嵌套,即把一个完整的If.Then.[Else.Jnd块 作为“一条语句”放在另一个If.Then.se块内某个分支语句上。嵌套必 须完全“包住”,不能互相“骑跨
将上面的块形式条件语句中“End If”去掉,并把 “Text1.Text="Hello!world"”语句放在“Then”的后面,则可以写成单行形 式,即: If C<0 Then Text1.Text="Hello!world" 执行任何一个﹤语句体﹥后,退出该结构,继续执行End If后面的语句。 ﹤语句体1﹥…﹤语句体n﹥可以是一个语句,也可以是多个语句。 块结构条件语句自上而下地对条件表达式进行判断,一旦发现某条件表 达式值为“真”,就执行与之相关的语句,其余部分跳过。如果没有条件 成立,就执行最后的Else子句,如果没有最后一条Else,并且所有条件均不 成立,那么不执行任何操作。 If和End If在块结构条件语句是必须要有的,Else子句和ElseIf子句都是 可选的,可以有多个ElseIf子句,但最多有一个Else子句。 语句中的﹤条件1﹥ 、 ﹤条件2﹥等都是逻辑表达式,或表达式的数据类 型是某种可隐式转换为 Boolean 的数据类型,如对数值表达式,非0值表示 True,0值表示False。 块形式的条件语句可以嵌套,即把一个完整的If…Then…[Else…]End if块 作为“一条语句”放在另一个If…Then…Else块内某个分支语句上。嵌套必 须完全“包住”,不能互相“骑跨
例如 Private Sub Form1_Load Dim x, y As integer ⅹ=val( InputBox("请输入ⅹ的值","平方值计算",0)) Ifx>10 Then Console. WriteLine("输入的数据太大") Else If x>0 Then Console, writeline"(输入的数据平方值为:{0}";X*x) Else Console. WriteLine(输入的数据不能小于0") End if End if End sub
例如: Private Sub Form1_Load() Dim x, y As Integer x = Val(InputBox("请输入 x 的值", "平方值计算", 0)) If x > 10 Then Console.WriteLine ("输入的数据太大") Else If x > 0 Then Console.WriteLine "(输入的数据平方值为:{0}"; x * x) Else Console.WriteLine(输入的数据不能小于0") End If End If End Sub
4.1.3I函数 对于简单的行I语句,可以用更简单的If函数代替。 1I函数的格式 If(<条件表达式>,<真部分丶,<假部分 2说明 当<条件表达式>的值为真,则函数返回<真部分>的值,否则,函数 返<假部分丶的值。 真部分>及<假部分丶可以是表达式、变量或其他函数。 I函数可直接参与另一个表达式的计算 注意:If函数中的3个参数都不能省略,而且要求<真部分丶,〈假部 分>及结果变量的类型一致。 例如,假定有如下的条件语句 If a> 5 Then r=1 Else 2 End if
4.1.3 IIf函数 对于简单的行If语句,可以用更简单的IIf函数代替。 1 IIf函数的格式 IIf(﹤条件表达式﹥ , ﹤真部分﹥ , ﹤假部分﹥) 2 说明 当﹤条件表达式﹥的值为真,则函数返回﹤真部分﹥的值,否则,函数 返﹤假部分﹥的值。 ﹤真部分﹥及﹤假部分﹥可以是表达式、变量或其他函数。 IIf函数可直接参与另一个表达式的计算。 注意:IIf函数中的3个参数都不能省略,而且要求﹤真部分﹥ , ﹤假部 分﹥及结果变量的类型一致。 例如,假定有如下的条件语句: If a > 5 Then r = 1 Else r = 2 End If
则可用下面的If函数来代替 If(a>5,1,2) 显然,用I函数可以使程序大为简化。再如: Private Sub Form1_Load Dim X as single, y as single X= InputBox( inputx",3) Console. WriteLine ("y=to]; IIf(X>5,X*X, X/2) End sub 4.1.4多分支结构 在νB中,多分支结构程序通过 Select case语句来实现。该语句以 Select Case开头,以 End sele结束。其功能是,根据〈测试条件>表达式的值, 从多个case子句中选择符合条件的一个子句执行 语句格式 Select Case<测试条件 [Case<表达式表1>] [<语句体1>]]
则可用下面的IIf函数来代替: r = IIf(a > 5, 1, 2) 显然,用IIf函数可以使程序大为简化。再如: Private Sub Form1_Load() Dim X As Single, Y As Single X = InputBox("input x", , 3) Console.WriteLine( "y={0}"; IIf(X > 5, X * X, X / 2) End Sub 4.1.4 多分支结构 在VB中,多分支结构程序通过Select Case语句来实现。该语句以Select Case开头,以End Select结束。其功能是,根据﹤测试条件﹥表达式的值, 从多个case子句中选择符合条件的一个子句执行。 – 语句格式 Select Case﹤测试条件﹥ [Case﹤表达式表1﹥] [﹤语句体1﹥]]