4.3 選擇結(jié)構(gòu)(或稱分支結(jié)構(gòu))
1. IF條件語(yǔ)句
(1)If……Then語(yǔ)句(單分支結(jié)構(gòu) F)
語(yǔ)句形式:
1)If <表達(dá)式> Then
語(yǔ)句塊
End If
2)If <表達(dá)式> Then <語(yǔ)句>
說(shuō)明:表達(dá)式一般為關(guān)系表達(dá)式、邏輯表達(dá)式,也可以為算術(shù)表達(dá)式,非0為True,0為False;
語(yǔ)句塊可以是一句或多句,若用2)表示,則只能是一句語(yǔ)句,若多句,語(yǔ)句間需用冒號(hào)分隔,而且必須在一行上書寫。
例:已知兩個(gè)數(shù)x和y,比較它們的大小,使得 x大于y:
方法一: if x
t=x
x=y
y=t
end if
方法二: if x
注意:將兩個(gè)變量中的數(shù)進(jìn)行交換時(shí),必須借助于第三個(gè)變量才能實(shí)現(xiàn)。
(2)If……Then……Else語(yǔ)句(雙分支結(jié)構(gòu))
語(yǔ)句形式:
1)If <表達(dá)式> Then
<語(yǔ)句塊1>
Else
<語(yǔ)句塊2>
End If
2) If <表達(dá)式> Then <語(yǔ)句1> Else <語(yǔ)句2>
例: x2 -5 x≠0
3x +2 x=0
(3)If……Then……ElseIf語(yǔ)句(多分支結(jié)構(gòu))
語(yǔ)句形式:
If <表達(dá)式1> Then
<語(yǔ)句塊1>
ElseIf <表達(dá)式2> Then
<語(yǔ)句塊2>
……
[ Else 語(yǔ)句塊 n+1 ]
End If
注意 :
1)不管有幾個(gè)分支,程序執(zhí)行了一個(gè)分支后,其余分支不再執(zhí)行;
2)ElseIf 不能寫成Else If
3)當(dāng)多分支中有多個(gè)表達(dá)式同時(shí)滿足,則只執(zhí)行第一個(gè)與之匹配的語(yǔ)句塊
例:已知變量strC中存放了一個(gè)字符,判斷該字符是字母字符、數(shù)字字符還是其他字符。
(4)If語(yǔ)句的嵌套
If語(yǔ)句的嵌套是指if 或else后面的語(yǔ)句塊中又包含If語(yǔ)句。語(yǔ)句形式:
If <表達(dá)式1> Then
If <表達(dá)式11> Then
……
End If
……
End If
注意:
1)對(duì)于嵌套結(jié)構(gòu),為了增強(qiáng)程序的可讀性,應(yīng)該采用縮進(jìn)形式書寫;
2)If語(yǔ)句形式若不在一行上書寫,必須與End If配對(duì),多個(gè)if嵌套,End If與它最接近的Emd If配對(duì)。
例: 已知x、y、z三個(gè)數(shù),比較它們的大小并排序,使得x>y>z.
2. Select Case語(yǔ)句(情況語(yǔ)句)
Select Case語(yǔ)句(情況語(yǔ)句)是多分支語(yǔ)句的又一種形式,語(yǔ)句形式:
Select Case 變量或表達(dá)式
Case 表達(dá)式列表1
語(yǔ)句塊1
Case 表達(dá)式列表2
語(yǔ)句塊2
……
[Case Else
語(yǔ)句塊n+1]
End Select
說(shuō)明:1)變量或表達(dá)式可以是數(shù)值型或字符串表達(dá)式
2)表達(dá)式列表I 可以是表達(dá)式、一組用逗號(hào)分隔的枚舉值、表達(dá)式1 to 表達(dá)式2、Is關(guān)系運(yùn)算符表達(dá)式;如:case 1 to 10 、 case "a","w","e","t" 、 case 2,4,6,8,is>10
3)并不是所有的多分支結(jié)構(gòu)都可以用情況語(yǔ)句代替的。
例:已知輸入某課程的百分制成績(jī)mark,要求顯示對(duì)應(yīng)五級(jí)制的評(píng)定,評(píng)定條件如下:
3. 條件函數(shù)
(1)if函數(shù)
函數(shù)形式: Iif(表達(dá)式,當(dāng)條件為True時(shí)的值,當(dāng)條件為False時(shí)的值.例:求X、Y中大的數(shù),并放入變量Tmax中: Tmax=Iif(X>Y, X, Y)
(2)Choose函數(shù)
函數(shù)形式:Choose(整數(shù)表達(dá)式,選項(xiàng)列表)
如果整數(shù)表達(dá)式的值是1,則選擇列表中的第1項(xiàng),依次類推;如果小于1或大于列表項(xiàng)數(shù)時(shí),則返回NULL。
例: 根據(jù)nub為1 -4的值,換算成不同的運(yùn)算符: OP= Choose(nub,“+”,“-”,“×”,“÷”)
相關(guān)推薦:計(jì)算機(jī)等級(jí)考試二級(jí)VB二十套上機(jī)試題及答案北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |