第 5 章 選擇控制項與條件敘述 5-1 結構化程式設計 5-1 結構化程式設計 5-2...

46
5 5 第第第第第第第第第第 第第第第第第第第第第 5-1 5-1 第第第第第第第 第第第第第第第 5-2 5-2 第第第第第第第第 第第第第第第第第 5-3 5-3 第第第第第第第 第第第第第第第 5-4 5-4 第第第第第 第第第第第 5-5 5-5 第第第第第第 第第第第第第 5-6 5-6 第第 第第第第 第第 第第第第

Post on 21-Dec-2015

231 views

Category:

Documents


4 download

TRANSCRIPT

第第 55 章 章 選擇控制項與條件敘述選擇控制項與條件敘述 5-1 5-1 結構化程式設計結構化程式設計 5-2 5-2 關係與邏輯運算子關係與邏輯運算子 5-3 5-3 簡單的條件敘述簡單的條件敘述 5-4 5-4 選擇控制項選擇控制項 5-5 5-5 巢狀條件敘述巢狀條件敘述 5-6 5-6 多選一條件敘述多選一條件敘述

5-1 5-1 結構化程式設計結構化程式設計 5-1-1 5-1-1 結構化程式設計結構化程式設計 5-1-2 5-1-2 流程控制的基礎流程控制的基礎

5-1-1 5-1-1 結構化程式設計結構化程式設計 -- 說明說明 結構化程式設計是一種軟體開發方法,它是用來結構化程式設計是一種軟體開發方法,它是用來

組織和撰寫程式碼的技術,使用由上而下的設計組織和撰寫程式碼的技術,使用由上而下的設計方法來分析問題,將程式分解成階層架構的「模方法來分析問題,將程式分解成階層架構的「模組」(組」( ModuleModule )。)。

每個模組是一段擁有獨立功能的程式碼,而且只每個模組是一段擁有獨立功能的程式碼,而且只有單一的進入點和離開點,各模組間使用三種流有單一的進入點和離開點,各模組間使用三種流程控制:循序結構(程控制:循序結構( SequentialSequential )、選擇結構)、選擇結構(( SelectionSelection )和重複結構()和重複結構( IterationIteration )來整)來整合。合。

結構化程式設計的主要觀念有三項,如下所示:結構化程式設計的主要觀念有三項,如下所示:• 由上而下設計方法。由上而下設計方法。• 流程控制結構。流程控制結構。• 模組。模組。

5-1-1 5-1-1 結構化程式設計結構化程式設計 -- 由上而由上而下設計方法下設計方法

由上而下設計方法是面對問題時,先將整由上而下設計方法是面對問題時,先將整個問題分解成數個獨立功能的大模組,再個問題分解成數個獨立功能的大模組,再對於這每一個大模組,一一分割成數個小對於這每一個大模組,一一分割成數個小模組,位在下層的模組並不會跳到上層模模組,位在下層的模組並不會跳到上層模組,如此一直往下細分。組,如此一直往下細分。

等這些細分的小問題被一一解決且測試完等這些細分的小問題被一一解決且測試完成後,再將它們整合起來,如此一層層向成後,再將它們整合起來,如此一層層向上來完成整個程式設計。上來完成整個程式設計。

5-1-2 5-1-2 流程控制的基礎流程控制的基礎 -- 說明說明 程式語言撰寫的程式碼大部分是一列指令程式語言撰寫的程式碼大部分是一列指令

接著一列指令循序的執行,但是對於複雜接著一列指令循序的執行,但是對於複雜的工作,為了達成預期的執行結果,我需的工作,為了達成預期的執行結果,我需要使用「流程控制結構」(要使用「流程控制結構」( Control Control StructuresStructures )來改變執行順序。)來改變執行順序。

5-1-2 5-1-2 流程控制的基礎流程控制的基礎 -- 循序結循序結構構

循序結構是程式預設的執行方式,也就是循序結構是程式預設的執行方式,也就是一個敘述接著一個敘述依序的執行,如下一個敘述接著一個敘述依序的執行,如下圖所示:圖所示:

5-1-2 5-1-2 流程控制的基礎流程控制的基礎 -- 選擇結選擇結構構

選擇結構是一種條件控制敘述,它是一個選擇題,選擇結構是一種條件控制敘述,它是一個選擇題,可以分為單一選擇、二選一或多選一共三種。程可以分為單一選擇、二選一或多選一共三種。程式執行順序是依照關係運算式的條件,來決定執式執行順序是依照關係運算式的條件,來決定執行哪一個區塊的程式碼,如下圖所示:行哪一個區塊的程式碼,如下圖所示:

5-1-2 5-1-2 流程控制的基礎流程控制的基礎 -- 重複結重複結構構

重複結構就是迴圈控制,它是重複執行一重複結構就是迴圈控制,它是重複執行一個區塊的程式碼,提供一個結束條件結束個區塊的程式碼,提供一個結束條件結束迴圈的執行,依結束條件測試的位置不同迴圈的執行,依結束條件測試的位置不同分為兩種,如下所示:分為兩種,如下所示:• 前測式重複結構前測式重複結構• 後測式重複結構後測式重複結構

5-1-2 5-1-2 流程控制的基礎流程控制的基礎 -- 前測式重複前測式重複結構結構

測試迴圈結束條件在程式區塊的開頭,需測試迴圈結束條件在程式區塊的開頭,需要符合條件,才能執行迴圈中的程式碼,要符合條件,才能執行迴圈中的程式碼,如下圖所示:如下圖所示:

5-1-2 5-1-2 流程控制的基礎流程控制的基礎 -- 後測式重複後測式重複結構結構

測試迴圈結束條件在程式區塊的結尾,所測試迴圈結束條件在程式區塊的結尾,所以迴圈的程式區塊至少會執行一次,如下以迴圈的程式區塊至少會執行一次,如下圖所示:圖所示:

5-2 5-2 關係與邏輯運算子關係與邏輯運算子 5-2-1 5-2-1 關係運算子關係運算子 5-2-2 5-2-2 邏輯與位元運算子邏輯與位元運算子

5-2-1 5-2-1 關係運算子關係運算子 -- 說明說明 關係運算子也稱為比較運算子,它並沒有優先順關係運算子也稱為比較運算子,它並沒有優先順

序的分別,通常都是使用在迴圈和條件敘述作為序的分別,通常都是使用在迴圈和條件敘述作為判斷條件,其運算結果是布林值的判斷條件,其運算結果是布林值的 TrueTrue或或 FalseFalse ,,如下表所示:如下表所示:

運算子 說明 運算式範例 結果

= 等於 16 = 13 False

<> 不等於 16 <> 13 True

< 小於 16 < 13 False

> 大於 16 > 13 True

<= 小於等於 16 <= 13 False

>= 大於等於 16 >= 13 True

Is 物件比較 比較 2個變數是否指向同一個物件IsNot 物件比較 比較 2個變數是否指向不同的物件

5-2-1 5-2-1 關係運算子關係運算子 -- 比較方式比較方式 Visual BasicVisual Basic 不同資料型態的比較方式,不同資料型態的比較方式,

如下表所示:如下表所示:資料型態 說明

Byte、Short、Integer和 Long 比較整數的數值Single和 Double 比較方式是使用 IEEE 754標準的規則進行比較

Decimal 比較 2個運算元的數值Boolean 只能使用"="和"<>"運算子,當 2個運算元都是

True或 False時,"="為 True,"<>"為 False

Date 比較 2個運算元的日期/時間值Char 比較 Unicode值String 以 Option Compare關鍵字敘述的設定使用二進

位 Binary或文字 Text來進行比較

5-2-2 5-2-2 邏輯與位元運算子邏輯與位元運算子 -- 說明說明 邏輯運算子的運算元如果是關係運算式的邏輯運算子的運算元如果是關係運算式的

BooleanBoolean 資料型態,此時的角色是邏輯運資料型態,此時的角色是邏輯運算子;如為數值,算子;如為數值, AndAnd、、 OrOr和和 XorXor 則是則是位元運算子。位元運算子。

5-2-2 5-2-2 邏輯與位元運算子邏輯與位元運算子 -- 邏輯運算邏輯運算子子

在迴圈和條件敘述的判斷條件如果不只一個,需在迴圈和條件敘述的判斷條件如果不只一個,需要使用邏輯運算子來連接,如下表所示:要使用邏輯運算子來連接,如下表所示:運算子 說明

Not 非,傳回運算元相反的值,通常配合運算式的布林值And 且,連接的 2個運算元都為 True,則運算式為 True

Or 或,連接的 2個運算元中,任一個為 True,則運算式為 True,否則為 False

Xor 連接的 2個運算元中,只有一個運算元為 True,而且 2個運算元不同時為 True,則運算式為 True,否則為 False

AndAlso 連接的 2個運算元都為 True才為 True,如果第 1個運算元已經False,就不用計算第 2個運算元,傳回 False

OrElse 連接的 2個運算元中,任一個為 True,則運算式為 True,否則為 False,如果第 1個為 True,就不用計算第 2個運算元,傳回

True

5-2-2 5-2-2 邏輯與位元運算子邏輯與位元運算子 -- 邏輯運算邏輯運算子範例子範例

對於複雜的關係運算式可以使用邏輯運算對於複雜的關係運算式可以使用邏輯運算子連接,一些實際的運算式範例,如下表子連接,一些實際的運算式範例,如下表所示:所示:

邏輯運算子 運算式範例 結果Not A Not (25 > 23) FalseNot B Not (14 <= 12) True

A And B 25 > 23 And 14 <= 12 FalseA Or B 25 > 23 Or 14 <= 12 True

A Xor B 25 > 23 Xor 14 <= 12 TrueA AndAlso B 25 > 23 AndAlso 14 <= 12 FalseA OrElse B 25 > 23 OrElse 14 <= 12 True,以此例第 2個運算元根本

不用計算

5-2-2 5-2-2 邏輯與位元運算子邏輯與位元運算子 -- 位元運算位元運算子子

如果運算元是如果運算元是 ByteByte、、 ShortShort、、 IntegerInteger或或 LongLong等數值時,等數值時, AndAnd、、 OrOr和和 XorXor 是「位元運算子」是「位元運算子」(( Bitwise OperatorsBitwise Operators ),能夠進行二進位值的),能夠進行二進位值的位元運算。位元運算。

AndAnd、、 OrOr和和 XorXor 位元運算是以二進位表示法的位元運算是以二進位表示法的每一個每一個 00 或或 11 值的位元進行運算,其每一個位元值的位元進行運算,其每一個位元的運算結果(的運算結果( aa 和和 bb 代表一個位元),如下表所代表一個位元),如下表所示:示:a B a And b a Or b a Xor b

1 1 1 1 01 0 0 1 10 1 0 1 10 0 0 0 0

5-2-2 5-2-2 邏輯與位元運算子邏輯與位元運算子 -- 位元運算位元運算子範例子範例

一些位元運算式的範例,括號內是二進位一些位元運算式的範例,括號內是二進位的值,如下表所示:的值,如下表所示:

位元運算子 A B 運算式範例 結果And 1(01) 3(11) A And C 1(01)Or 1(01) 3(11) A Or B 3(11)

Xor 1(01) 3(11) A Xor B 2(10)

5-3 5-3 簡單的條件敘述簡單的條件敘述 5-3-1 If Then5-3-1 If Then 是否選條件敘述是否選條件敘述 5-3-2 If Then/Else5-3-2 If Then/Else 二選一條件敘述二選一條件敘述 5-3-3 IIf()5-3-3 IIf() 條件函數條件函數

5-3-1 If Then5-3-1 If Then 是否選條件敘述是否選條件敘述 -- 語法語法 If ThenIf Then 條件敘述是一種是否執行的條件,條件敘述是一種是否執行的條件,

決定是否執行區塊內的程式碼。如果決定是否執行區塊內的程式碼。如果 IfIf 條條件為件為 TrueTrue ,就執行,就執行 Then/End IfThen/End If 間的程式間的程式碼,其語法如下所示:碼,其語法如下所示:

If If 條件 條件 ThenThen

程式區塊程式區塊End IfEnd If 上述「條件」是第上述「條件」是第 5-25-2 節的關係運算式。節的關係運算式。

5-3-1 If Then5-3-1 If Then 是否選條件敘述是否選條件敘述 -- 範例範例 例如:學生成績超過例如:學生成績超過 6060 分是及格分數,如下所分是及格分數,如下所

示:示:If txtScore.Text >= 60 ThenIf txtScore.Text >= 60 Then lblOutput.Text &= "lblOutput.Text &= " 成績在範圍中..成績在範圍中.. " & _" & _ vbNewLinevbNewLine lblOutput.Text &= "lblOutput.Text &= " 學生成績及格學生成績及格 : " & _: " & _ txtScore.Text & vbNewLinetxtScore.Text & vbNewLineEnd IfEnd If 上述條件為上述條件為 TrueTrue ,就執行區塊的程式碼,可以,就執行區塊的程式碼,可以

顯示文字內容。顯示文字內容。

5-3-1 If Then5-3-1 If Then 是否選條件敘述是否選條件敘述 -- 流程流程圖圖

5-3-2 If Then/Else5-3-2 If Then/Else 二選一條件敘述二選一條件敘述 --語法語法

更進一步如果擁有排它情況的兩個執行區塊,只更進一步如果擁有排它情況的兩個執行區塊,只能二選一。我們可以加上能二選一。我們可以加上 ElseElse 關鍵字,如果關鍵字,如果 IfIf 條條件為件為 TrueTrue ,就執行,就執行 Then/ElseThen/Else 間的程式碼;間的程式碼;FalseFalse 就執行就執行 Else/End IfElse/End If 間的程式碼,其語法如間的程式碼,其語法如下所示:下所示:

If If 條件 條件 ThenThen

程式區塊程式區塊 11

ElseElse

程式區塊程式區塊 22

End IfEnd If

5-3-2 If Then/Else5-3-2 If Then/Else 二選一條件敘述二選一條件敘述 --範例範例

例如:使用例如:使用 If Then/ElseIf Then/Else 條件敘述,以身條件敘述,以身高來決定購買半票或全票,如下所示:高來決定購買半票或全票,如下所示:

length = CInt(txtLength.Text)length = CInt(txtLength.Text)If length > 120 ThenIf length > 120 Then lblOutput.ForeColor = Color.BluelblOutput.ForeColor = Color.Blue lblOutput.Text = "lblOutput.Text = "購買全票購買全票 !"!"ElseElse lblOutput.ForeColor = Color.RedlblOutput.ForeColor = Color.Red lblOutput.Text = "lblOutput.Text = "購買半票購買半票 !"!"End IfEnd If

5-3-2 If Then/Else5-3-2 If Then/Else 二選一條件敘述二選一條件敘述 --流程圖流程圖

5-3-3 IIf()5-3-3 IIf() 條件函數條件函數 Visual BasicVisual Basic的的 IIf()IIf() 條件函數主要是使用條件函數主要是使用

在指定敘述,可以使用條件來指定變數值,在指定敘述,可以使用條件來指定變數值,其語法如下所示:其語法如下所示:

變數 變數 = IIf(= IIf( 關係關係 //條件運算式條件運算式 , , 變數變數 1, 1, 變數變數2)2)

上述指定敘述的上述指定敘述的 "=""=" 號右邊是條件函數,如號右邊是條件函數,如同同 If/ElseIf/Else 條件,若條件成立,傳回值是變條件,若條件成立,傳回值是變數數 11 ,就是將變數值指定成變數,就是將變數值指定成變數 11 ;否則傳;否則傳回變數回變數 22 ,將變數值指定成變數,將變數值指定成變數 22 。例如:。例如:12/2412/24 小時制的轉換,如下所示:小時制的轉換,如下所示:

hour = IIf(hour >= 12, hour-12, hour)hour = IIf(hour >= 12, hour-12, hour)

5-4 5-4 選擇控制項選擇控制項 5-4-1 5-4-1 核取方塊控制項核取方塊控制項 5-4-2 5-4-2 選項按鈕控制項選項按鈕控制項 5-4-3 5-4-3 群組方塊控制項群組方塊控制項

5-4 5-4 選擇控制項選擇控制項 在在 Visual BasicVisual Basic 程式可以使用多種控制項程式可以使用多種控制項

來配合條件敘述,以便建立選擇功能的使來配合條件敘述,以便建立選擇功能的使用介面,如下圖所示:用介面,如下圖所示:

5-4-1 5-4-1 核取方塊控制項核取方塊控制項 -- 說明說明 核取方塊是一個開關,可以讓使用者選擇核取方塊是一個開關,可以讓使用者選擇

是否開啟功能或設定某些參數。如果在表是否開啟功能或設定某些參數。如果在表單擁有多個核取方塊控制項,每一個控制單擁有多個核取方塊控制項,每一個控制項都是獨立選項,換句話說,它允許複選。項都是獨立選項,換句話說,它允許複選。

5-4-1 5-4-1 核取方塊控制項核取方塊控制項 --屬性屬性 核取方塊控制項的常用屬性核取方塊控制項的常用屬性

屬性 說明Appearance 核取方塊的外觀,可以是 Normal正常或 Button按鈕外觀

Checked 是否已經核取,預設 False為沒有核取,True為核取ThreeState 是否啟用第 3種狀態,預設為 False不啟用,True為啟用

CheckedState 核取方塊目前的狀態共有三種狀態:Checked是核取、Indeterminate是忽略的灰色勾號和 Unchecked沒有核取

CheckAlign 指定核取方塊的對齊方式,共有井字形的 9個位置可供選擇

5-4-1 5-4-1 核取方塊控制項核取方塊控制項 -- 是否選是否選取取

當使用者選取核取方塊後,程式可以檢查當使用者選取核取方塊後,程式可以檢查核取方塊的核取方塊的 CheckedChecked 屬性,以判斷使用者屬性,以判斷使用者是否選取核取方塊,如下所示:是否選取核取方塊,如下所示:

If chkOriginal.Checked ThenIf chkOriginal.Checked Then

total += 250 * quantitytotal += 250 * quantity

End IfEnd If

5-4-2 5-4-2 選項按鈕控制項選項按鈕控制項 -- 說明說明 選項按鈕是二選一或多選一的選擇題,使選項按鈕是二選一或多選一的選擇題,使

用者可以在一組選項按鈕中選取一個選項,用者可以在一組選項按鈕中選取一個選項,它是一個單選題。它是一個單選題。

5-4-2 5-4-2 選項按鈕控制項選項按鈕控制項 --屬性屬性 選項按鈕控制項的常用屬性選項按鈕控制項的常用屬性屬性 說明

Appearance 選項按鈕的外觀,可以是 Normal正常或 Button按鈕外觀Checked 是否已經選取,預設 False為沒有選取,True為選取

CheckAlign 指定選項按鈕的對齊方式,共有井字形的 9個位置可供選擇

5-4-2 5-4-2 選項按鈕控制項選項按鈕控制項 -- 是否選是否選取取

當使用者選取選項按鈕後,程式一樣是檢當使用者選取選項按鈕後,程式一樣是檢查查 CheckedChecked 屬性,以判斷是否已選取該選屬性,以判斷是否已選取該選項按鈕,如下所示:項按鈕,如下所示:

If rdbRare.Checked ThenIf rdbRare.Checked Then

lblOutput.Text = "lblOutput.Text = " 三分熟三分熟 ""

End IfEnd If

5-4-3 5-4-3 群組方塊控制項群組方塊控制項 -- 說明說明 「群組方塊」(「群組方塊」( GroupBoxGroupBox )是一種容器控制項,)是一種容器控制項,

在此控制項中可以新增其他控制項,以便讓其中在此控制項中可以新增其他控制項,以便讓其中的控制項屬於同一群組。在功能上除了美化控制的控制項屬於同一群組。在功能上除了美化控制項編排外,還可以組織表單眾多不同的控制項。項編排外,還可以組織表單眾多不同的控制項。

5-4-3 5-4-3 群組方塊控制項群組方塊控制項 --屬性屬性 群組方塊控制項的常用屬性群組方塊控制項的常用屬性屬性 說明Text 群組標題名稱,它是位在方框左上角的名稱,如果沒有指定此

屬性(設為空白的空字串),就只顯示方框

5-5 5-5 巢狀條件敘述巢狀條件敘述 -- 說明說明 在在 IfIf 條件敘述如果擁有其他條件敘述如果擁有其他 IfIf 條件敘述,此程式條件敘述,此程式

架構稱為「巢狀條件敘述」,如下所示:架構稱為「巢狀條件敘述」,如下所示:If chkForeColor.Checked ThenIf chkForeColor.Checked Then If rdbBlue.Checked ThenIf rdbBlue.Checked Then lblOutput.ForeColor = Color.RedlblOutput.ForeColor = Color.Red ElseElse lblOutput.ForeColor = Color.YellowlblOutput.ForeColor = Color.Yellow End IfEnd IfElseElse If rdbBlue.Checked ThenIf rdbBlue.Checked Then lblOutput.BackColor = Color.RedlblOutput.BackColor = Color.Red ElseElse lblOutput.BackColor = Color.YellowlblOutput.BackColor = Color.Yellow End IfEnd IfEnd IfEnd If

5-5 5-5 巢狀條件敘述巢狀條件敘述 -- 流程圖流程圖

5-6 5-6 多選一條件敘述多選一條件敘述 5-6-1 If Then/ElseIf5-6-1 If Then/ElseIf 多選一條件敘述多選一條件敘述 5-6-2 Select Case5-6-2 Select Case 多選一條件敘述多選一條件敘述 5-6-3 Choose()5-6-3 Choose() 函數函數

5-6-1 If Then/ElseIf5-6-1 If Then/ElseIf 多選一條件敘多選一條件敘述述 -- 說明說明

If Then/ElseIfIf Then/ElseIf 條件敘述是條件敘述是 If Then/ElseIf Then/Else 條件敘述的延伸,條件敘述的延伸,使用使用 ElseIfElseIf 來重複建立多選一條件敘述。例如:四則運算來重複建立多選一條件敘述。例如:四則運算的的 If Then/ElseIfIf Then/ElseIf 條件敘述,如下所示:條件敘述,如下所示:

If rdbAdd.Checked = True ThenIf rdbAdd.Checked = True Then result = opd1 + opd2 ' result = opd1 + opd2 ' 加 加 ElseIf rdbSubtract.Checked = True ThenElseIf rdbSubtract.Checked = True Then result = opd1 - opd2 ' result = opd1 - opd2 ' 減減ElseIf rdbMultiply.Checked = True ThenElseIf rdbMultiply.Checked = True Then result = opd1 * opd2 ' result = opd1 * opd2 ' 乘乘ElseIf rdbDivide.Checked = True ThenElseIf rdbDivide.Checked = True Then result = opd1 / opd2 ' result = opd1 / opd2 ' 除除ElseElse MsgBox("MsgBox("錯誤錯誤 : : 沒有選擇運算子沒有選擇運算子 !")!")End IfEnd If

5-6-1 If Then/ElseIf5-6-1 If Then/ElseIf 多選一條件敘多選一條件敘述述 -- 流程圖流程圖

5-6-2 Select Case5-6-2 Select Case 多選一條件敘述多選一條件敘述 --語法語法

Select CaseSelect Case 多選一條件敘述比多選一條件敘述比 If Then/ElseIfIf Then/ElseIf多條件敘述來的清楚明白,程式碼也比較簡潔。多條件敘述來的清楚明白,程式碼也比較簡潔。它可以依照符合條件來執行不同區塊的程式碼,它可以依照符合條件來執行不同區塊的程式碼,其語法如下所示:其語法如下所示:

Select Case Select Case 運算式運算式 Case Case 值值 11 程式區塊程式區塊 11 Case Case 值值 22 程式區塊程式區塊 22 …… …….. Case ElseCase Else 程式區塊程式區塊 NNEnd CaseEnd Case

5-6-2 Select Case5-6-2 Select Case 多選一條件敘述多選一條件敘述 --範例範例

例如:取得運費費率的例如:取得運費費率的 Select CaseSelect Case 條件,條件,如下所示:如下所示:

Select Case amountSelect Case amount Case Is < 1000Case Is < 1000 rate = 0.1rate = 0.1 Case 1000 To 4999Case 1000 To 4999 rate = 0.08rate = 0.08 Case 5000 To 9999Case 5000 To 9999 rate = 0.05rate = 0.05 Case Is >= 10000Case Is >= 10000 rate = 0rate = 0End SelectEnd Select

5-6-2 Select Case5-6-2 Select Case 多選一條件敘述多選一條件敘述 --CaseCase 條件條件

CaseCase 條件的程式碼範例,如下表所示:條件的程式碼範例,如下表所示:Case範例 說明

Case 1 只有運算式或值,此時條件值相當是等於,即測試值等於1

Case "Mail" 測試值為字串值Mail

Case 1000 To 4999 測試值在 1000~4999之間Case 2, 3, 4 To 6 測試值是否為 2、3和介於 4~6

Case Is < 1000 測試值是否小於 1000

5-6-2 Select Case5-6-2 Select Case 多選一條件敘述多選一條件敘述 --流程圖流程圖

5-6-3 Choose()5-6-3 Choose() 函數函數 Visual BasicVisual Basic的的 Choose()Choose() 函數可以依據函數可以依據第第 11 個參數的整數值,來傳回對應值,如個參數的整數值,來傳回對應值,如下所示:下所示:

lblOutput.Text=Choose(dtDay, "lblOutput.Text=Choose(dtDay, " 星期日星期日 ", "", " 星期一星期一 ", _", _

"" 星期二星期二 ", "", " 星期三星期三 ", "", " 星期四星期四 ", "", " 星期五星期五 ", "", " 星期六星期六 ")")

上述程式碼依照變數上述程式碼依照變數 dtDaydtDay 的整數值,值的整數值,值11 傳回第傳回第 22 個參數,即星期日,值個參數,即星期日,值 22 傳回傳回第第 33 個參數,依此類推。個參數,依此類推。