版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第5章 選擇結(jié)構(gòu)程序設(shè)計(jì),本章要點(diǎn): 1塊結(jié)構(gòu)條件語(yǔ)句IfThenEnd If的使用 2多分支條件語(yǔ)句ElseIf的應(yīng)用 3 多分支選擇語(yǔ)句Select CaseEnd Selec的應(yīng)用 選擇結(jié)構(gòu)是一種常用的基本結(jié)構(gòu),其特點(diǎn)是根據(jù)所給定的選擇條件為真或假,來決定從不同操作中選擇執(zhí)行一種操作。,選擇結(jié)構(gòu)程序設(shè)計(jì),5.1 塊If條件語(yǔ)句,5.4 Select Case 語(yǔ)句,5.5 應(yīng)用舉例,返回,退出,5.2 塊If語(yǔ)句的嵌套,5.3 ElseIf條件語(yǔ)句,5.1塊If語(yǔ)句(If.Then語(yǔ)句),塊If語(yǔ)句是用來判斷條件成立與否,然后決定下一步怎么執(zhí)行的一種控制語(yǔ)句,這種選擇結(jié)構(gòu)是最常用的雙選擇
2、結(jié)構(gòu),即只有兩種操作可以選擇。如果條件為真,執(zhí)行其中一個(gè)操作;如果條件為假,則執(zhí)行另外一個(gè)操作。 塊結(jié)構(gòu)if語(yǔ)句語(yǔ)法格式如下: If Then Else End If,說明: 為必選項(xiàng),它可以是關(guān)系表達(dá)式、布爾表達(dá)式、數(shù)值表達(dá)式或字符串表達(dá)式,但總的說來它是一個(gè)邏輯值的表達(dá)式,其返回結(jié)果必須是True或False。對(duì)于數(shù)值表達(dá)式,VB將0作為False,非0作為True來處理;對(duì)于字符串表達(dá)式,VB只允許出現(xiàn)包含數(shù)字的字符串,當(dāng)字符串中的數(shù)字值為0時(shí),則認(rèn)為是False,否則認(rèn)為是True。 和可以是一條語(yǔ)句,也可以是多條語(yǔ)句。,單行結(jié)構(gòu)If語(yǔ)句的執(zhí)行過程是這樣的:首先計(jì)算的值,如果結(jié)果為Tr
3、ue,則執(zhí)行,否則,執(zhí)行。,選擇結(jié)構(gòu)流程圖,【例5.1】設(shè)計(jì)界面如圖5-2所示,用文本框Text1輸入x的值,單擊按鈕時(shí),在標(biāo)簽Label1中顯示出x的絕對(duì)值。 運(yùn)行界面 “求絕對(duì)值”按鈕Command1的單擊事件過程如下: Private Sub Command1_Click() x = Val(Text1.Text) 將文本框中的字符內(nèi)容轉(zhuǎn)換成數(shù)值 If x 0 Then Label1.Caption = x Else Label1.Caption = -x 根據(jù)x的正負(fù)確定顯示結(jié)果 End Sub,使用該語(yǔ)句時(shí),應(yīng)該注意以下問題: (1)整個(gè)塊結(jié)構(gòu)必須以If開始,以End If結(jié)束。 (
4、2)塊結(jié)構(gòu)If 語(yǔ)句中Then后面的語(yǔ)句不能與其寫在同一行上,否則,必須加上分隔符。 (3)塊結(jié)構(gòu)中的是可以省略的。省略后即簡(jiǎn)化為以下形式: If Then End If 這種形式的If語(yǔ)句主要用來判斷一些操作是否執(zhí)行。當(dāng)條件成立時(shí),根據(jù)完成的一定的操作;而當(dāng)條件不成立時(shí)不做任何處理,直接執(zhí)行下條語(yǔ)句。,例如,例5.1也可以采用下列程序段來實(shí)現(xiàn)。 x = Val(Text1.Text) If x 0 Then x = -x 取負(fù)數(shù)x的相反數(shù) End If Label1.Caption = x (4)在塊結(jié)構(gòu)中,If后面顯式的給出了判斷條件,Else后面雖然沒有顯式的給出一個(gè)條件,但相當(dāng)于存在一
5、個(gè)與If部分相反的隱含條件。,返回,在實(shí)際應(yīng)用中,經(jīng)常會(huì)遇到“多分支”選擇的程序,即從多種情況中選擇執(zhí)行其中一種情況,這時(shí),就要使用塊if語(yǔ)句的嵌套。 塊結(jié)構(gòu)If語(yǔ)句可以嵌套,即在上述結(jié)構(gòu)中的和部分仍然可以包含另外一個(gè)塊結(jié)構(gòu)If語(yǔ)句。如果在條件成立或不成立的情況下要繼續(xù)判斷其他條件,則可以在語(yǔ)句塊的位置上再使用另外一個(gè)塊結(jié)構(gòu)條件語(yǔ)句。,5.2 塊if語(yǔ)句的嵌套,If子句部分的嵌套結(jié)構(gòu),Else子句部分的嵌套結(jié)構(gòu),使用嵌套語(yǔ)句時(shí)應(yīng)注意以下問題: (1)如果存在嵌套時(shí),語(yǔ)句中的每一個(gè)Else必須和一個(gè)If相對(duì)應(yīng),應(yīng)避免產(chǎn)生混亂。在書寫時(shí),可以將同一層的If子句和Else子句左對(duì)齊,內(nèi)層的各語(yǔ)句塊相
6、對(duì)于外層向右縮進(jìn)若干空格,以使程序結(jié)構(gòu)更加清楚,便于閱讀和查錯(cuò)。 (2)每一個(gè)塊結(jié)構(gòu)都必須以If開始,以End If結(jié)束。 (3)內(nèi)層嵌套的塊結(jié)構(gòu)中除了滿足該層規(guī)定的條件外,還必須首先滿足外層結(jié)構(gòu)中相應(yīng)位置的條件。 (4)VB中對(duì)塊嵌套的層數(shù)沒有限制,在嵌套的塊結(jié)構(gòu)中仍然可以繼續(xù)嵌套其他的塊結(jié)構(gòu),但嵌套時(shí)外層的塊結(jié)構(gòu)必須完全“包住”內(nèi)層的塊結(jié)構(gòu),不能相互“騎跨”。 (5)利用塊If語(yǔ)句的嵌套可以解決“多分支”選擇的問題。,【例5.2】建立如圖5-3所示的界面,輸入任一點(diǎn)的坐標(biāo)(X,Y),判斷該點(diǎn)位于哪個(gè)象限。 在平面直角坐標(biāo)系中,點(diǎn)所在的象限有以下4種情況: X0 ,Y0 點(diǎn)位于第一象限內(nèi) X
7、0, Y0 點(diǎn)位于第二象限內(nèi) X0, Y0 點(diǎn)位于第三象限內(nèi) X=0或Y=0 位于原點(diǎn),給出提示“該點(diǎn)不在任何象限內(nèi)”。 建立界面,分別通過文本框Text1和Text2輸入坐標(biāo)X、Y的值,單擊“判斷”按鈕Command1進(jìn)行判斷,將結(jié)果直接顯示在窗體上。,Private Sub Command1_Click() x = Val(Text1.Text) y = Val(Text2.Text) 判斷坐標(biāo)點(diǎn)是否位于坐標(biāo)軸 If x = 0 Or y = 0 Then Print 該點(diǎn)不位于任何象限 Exit Sub End If 判斷坐標(biāo)點(diǎn)所在象限 If x 0 Then If y 0 Then P
8、rint 該點(diǎn)位于第一象限 Else Print 該點(diǎn)位于第四象限 End If Else If y 0 Then Print 該點(diǎn)位于第二象限 Else Print 該點(diǎn)位于第三象限 End If End If End Sub,程序代碼如下:,程序運(yùn)行界面,【例5.3】編程序求一元二次方程ax2+bx+c=0的根(a不等于零)。 分析:根據(jù)數(shù)學(xué)知識(shí),要求一元二次方程的根,必須知道方程的三個(gè)系數(shù)a、b、c的值,然后根據(jù)判別式b2-4ac的值的情況判斷方程的根。方程的根有以下三種情況: 當(dāng)b2-4ac0時(shí),方程有兩個(gè)不相等的實(shí)根; 當(dāng)b2-4ac=0時(shí),方程有兩個(gè)相等的實(shí)根; 當(dāng)b2-4ac0時(shí)
9、,方程有兩個(gè)復(fù)根。,設(shè)計(jì)如右所示的界面,分別在文本框Text1、Text2和Text3中輸入a、b、c的值,單擊“求解”按鈕后在標(biāo)簽Label5中給出方程的解。,“求解”按鈕的事件代碼如下: Private Sub Command1_Click() Dim a, b, c, dert As Integer Dim p, r, x1, x2 As Single Dim str As String str = Chr(10) “年”; M; “月”; D; “日是”; Select Case week Case 0 Print -星期日- Case 1 Print -星期一- Case 2 Print -星期二- Case 3 Print -星期三-,Case 4 Print -星期四- Case 5 Print -星期五- Case 6 Print -星期六- End Select End Sub,本章小結(jié) 本章中主要介紹了一種常用的程序控制結(jié)構(gòu)選擇結(jié)構(gòu)以及VB中提供的用來實(shí)現(xiàn)選擇結(jié)構(gòu)流程控制的語(yǔ)句: 塊結(jié)構(gòu)條件語(yǔ)句IfThenEnd If 多分支選條件語(yǔ)句ElseIf 多分支選擇語(yǔ)句Select CaseEnd Select 在解決
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 餐飲業(yè)食品安全管理與監(jiān)督手冊(cè)(標(biāo)準(zhǔn)版)
- 金融風(fēng)險(xiǎn)管理理論與方法(標(biāo)準(zhǔn)版)
- 會(huì)議安全管理與應(yīng)急預(yù)案制度
- 公共交通服務(wù)設(shè)施管理制度
- 車站環(huán)境衛(wèi)生管理制度
- 養(yǎng)老院檔案信息管理制度
- 2026年柳州銀行股份有限公司招聘?jìng)淇碱}庫(kù)及完整答案詳解一套
- 中信證券股份有限公司分支機(jī)構(gòu)2026年校園招聘?jìng)淇碱}庫(kù)有答案詳解
- 養(yǎng)老院入住老人健康監(jiān)測(cè)制度
- 2026年重慶飛駛特人力資源管理有限公司派往某單位黨建工作輔助崗招聘?jìng)淇碱}庫(kù)及完整答案詳解1套
- 石子廠規(guī)范管理制度
- (高清版)DBJ∕T 13-278-2025 《福建省電動(dòng)汽車充電基礎(chǔ)設(shè)施建設(shè)技術(shù)標(biāo)準(zhǔn)》
- 2025年高一數(shù)學(xué)必修一數(shù)學(xué)競(jìng)賽模擬題
- QGDW11970.7-2023輸變電工程水土保持技術(shù)規(guī)程第7部分水土保持設(shè)施質(zhì)量檢驗(yàn)及評(píng)定
- 2025至2030年中國(guó)止鼾器行業(yè)市場(chǎng)現(xiàn)狀調(diào)查及前景戰(zhàn)略研判報(bào)告
- 人教版信息科技五年級(jí)全一冊(cè) 第26課 尋找最短的路徑 課件
- 人民軍隊(duì)性質(zhì)宗旨教育
- T-CEPPEA 5002-2019 電力建設(shè)項(xiàng)目工程總承包管理規(guī)范
- 護(hù)士長(zhǎng)管理培訓(xùn)課件
- 暫緩行政拘留申請(qǐng)書
- TSG 21-2015《固定式壓力容器安全技術(shù)監(jiān)察規(guī)程》
評(píng)論
0/150
提交評(píng)論