VB中if语句与select之间的区别是什么?
IF<条件1>Then<语句序列1>[ElseIf<条件2>Then<语句序列2>]...........[ElseIf<条件N>Then<语句序列N>][Eles<语句...
IF<条件1>Then
<语句序列1>
[ElseIf <条件2> Then
<语句序列2> ]
...........
[ElseIf <条件N> Then
<语句序列N> ]
[Eles
<语句序列N+1> ]
End If
=================================================================
Select Case <测试条件>
[ Case<表达式表1> ]
[<语句列1>]
[ Case<表达式表2> ]
[ <语句列2> ]
...............
[Case Else]
[ <其他语句列> ]
End Select
上面这两个条件语句有什么区别类?
我刚接触VB不久,大家可以不可以帮忙解释解释!
通俗易懂一点好吧,要不不好理解。呵呵~ 展开
<语句序列1>
[ElseIf <条件2> Then
<语句序列2> ]
...........
[ElseIf <条件N> Then
<语句序列N> ]
[Eles
<语句序列N+1> ]
End If
=================================================================
Select Case <测试条件>
[ Case<表达式表1> ]
[<语句列1>]
[ Case<表达式表2> ]
[ <语句列2> ]
...............
[Case Else]
[ <其他语句列> ]
End Select
上面这两个条件语句有什么区别类?
我刚接触VB不久,大家可以不可以帮忙解释解释!
通俗易懂一点好吧,要不不好理解。呵呵~ 展开
3个回答
推荐于2016-01-04
展开全部
多If分支和Select case 都是用来处理多条件分支的语句,区别在于:
1. If elseif .. 的每个分支都是独立的表达式,只有在前一个分支没有匹配才进行后一个分支的表达式判断。 如:
if x=1 the
do1
elseif x=2 and y=1 then
do2
...
以上 两个条件表达式可以没有任何关系,只有第一个x<>1时才会进行x=2 and y=1的表达式判断。
2. select case一般用于对同一个表达式不同结果值分支的语句。如:
select case x+2
case 1
do1
case 2,3
do3
case else
do4
end select
1. If elseif .. 的每个分支都是独立的表达式,只有在前一个分支没有匹配才进行后一个分支的表达式判断。 如:
if x=1 the
do1
elseif x=2 and y=1 then
do2
...
以上 两个条件表达式可以没有任何关系,只有第一个x<>1时才会进行x=2 and y=1的表达式判断。
2. select case一般用于对同一个表达式不同结果值分支的语句。如:
select case x+2
case 1
do1
case 2,3
do3
case else
do4
end select
展开全部
没什么区别都是选择语句,用了过多的Else后你会感到很不方便,而且程序结构也不清晰,所以大多数的语言还有Select语句帮助解决这个问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Select Case语句经常用于将某变量或表达式的值,与一组数据分别进行比较,判断相等或不相等,并执行相应的分支语句列,通常写出来的代码会比If-Else语句的整洁,容易看懂;如:
Select Case i
Case 0:
......
Case 1,3:
......
Case 5 To 8:
......
Case Else:
......
End Select
但如果改装成If-Else语句将会是:
If i=0 Then
......
ElseIf i=1 Or i=3 Then
......
ElseIf i=5 Or i=6 Or i=7 Or i=8 Then
......
Else
......
End If
看着上面众多i=*、Or、Then,你会不会觉得很烦呢?
If-Else语句除了可以用来判断相等不相等的关系,还可以用来判断大于或小于的关系,这点Select Case语句是无法做到的。Select Case语句可以改装成If-Else语句,但If-Else语句有时很难甚至无法或者需要通过其它方法来改装成Select Case语句。如:
If total<60 Then
Print "不及格"
ElseIf total<70 Then
Print "及格"
ElseIf total<80 Then
Print "中等"
ElseIf total<90 Then
Print "良好"
ElseIf total<100 Then
Print "优秀"
Else
Print "帅呆了"
End If
可以看到你无法将上面的If-Else语句直接改装成Select Case语句,Select Case语句不能用来判断大于或小于关系,但你可以改造一下,来使用它:
Select Case Int(total / 10)
Case 0 To 5: Print "不及格"
Case 6: Print "及格"
Case 7: Print "中等"
Case 8: Print "良好"
Case 9: Print "优秀"
Case Else: Print "帅呆了"
End Select
其中Int(total / 10)是用于求得total除以10的整数部分。
Select Case i
Case 0:
......
Case 1,3:
......
Case 5 To 8:
......
Case Else:
......
End Select
但如果改装成If-Else语句将会是:
If i=0 Then
......
ElseIf i=1 Or i=3 Then
......
ElseIf i=5 Or i=6 Or i=7 Or i=8 Then
......
Else
......
End If
看着上面众多i=*、Or、Then,你会不会觉得很烦呢?
If-Else语句除了可以用来判断相等不相等的关系,还可以用来判断大于或小于的关系,这点Select Case语句是无法做到的。Select Case语句可以改装成If-Else语句,但If-Else语句有时很难甚至无法或者需要通过其它方法来改装成Select Case语句。如:
If total<60 Then
Print "不及格"
ElseIf total<70 Then
Print "及格"
ElseIf total<80 Then
Print "中等"
ElseIf total<90 Then
Print "良好"
ElseIf total<100 Then
Print "优秀"
Else
Print "帅呆了"
End If
可以看到你无法将上面的If-Else语句直接改装成Select Case语句,Select Case语句不能用来判断大于或小于关系,但你可以改造一下,来使用它:
Select Case Int(total / 10)
Case 0 To 5: Print "不及格"
Case 6: Print "及格"
Case 7: Print "中等"
Case 8: Print "良好"
Case 9: Print "优秀"
Case Else: Print "帅呆了"
End Select
其中Int(total / 10)是用于求得total除以10的整数部分。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询