![選擇結(jié)構(gòu)課件_第1頁](http://file4.renrendoc.com/view12/M04/3D/33/wKhkGWclxNKAZUn8AAKELfzVZCo368.jpg)
![選擇結(jié)構(gòu)課件_第2頁](http://file4.renrendoc.com/view12/M04/3D/33/wKhkGWclxNKAZUn8AAKELfzVZCo3682.jpg)
![選擇結(jié)構(gòu)課件_第3頁](http://file4.renrendoc.com/view12/M04/3D/33/wKhkGWclxNKAZUn8AAKELfzVZCo3683.jpg)
![選擇結(jié)構(gòu)課件_第4頁](http://file4.renrendoc.com/view12/M04/3D/33/wKhkGWclxNKAZUn8AAKELfzVZCo3684.jpg)
![選擇結(jié)構(gòu)課件_第5頁](http://file4.renrendoc.com/view12/M04/3D/33/wKhkGWclxNKAZUn8AAKELfzVZCo3685.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第4章選擇結(jié)構(gòu)
在程序設(shè)計(jì)中經(jīng)常遇到這類問題,它需要根據(jù)不
同的情況采用不同的處理方法。例如,一元二次方程
的求根問題,要根據(jù)判別式小于零或大于等于零的情
況,采用不同的數(shù)學(xué)表達(dá)式進(jìn)行計(jì)算。對于這類問題,
如果用順序結(jié)構(gòu)編程,顯然力不從心。必須借助選擇
結(jié)構(gòu)。本章主要介紹實(shí)現(xiàn)選擇結(jié)構(gòu)的語句。包括:行
If語句、塊If語句、ElseIf語句、SelectCase語句,以
及選擇結(jié)構(gòu)在程序設(shè)計(jì)中的應(yīng)用。
退出
鼠標(biāo)左1
4.1期f
4.2EkeIf語句
4.3行Lf語句
4.4SelectCase語句
4.1塊燈
4.1.1塊If的格式、功能
格式:
If條件then
語句塊1
[Else
語句塊2]
EndIf
說明:
(1)“條件”一般為關(guān)系表達(dá)式或邏輯表達(dá)式。
通常把關(guān)系表達(dá)式或邏輯表達(dá)式的值為真時,稱
為條件滿足;值為假時,稱為條件不滿足。反之亦然。
(2)語句塊1、語句塊2分別是“條件”滿足或不
滿足時,處理方法的描述,可以是若干個語句。
(3)If...Then>Else、EndIf是VB的保留字。
功能:、
(1)塊I信先判斷“條件”,其值為真時,執(zhí)行
語句塊1;為假時執(zhí)行語句塊2。當(dāng)缺?。跡lse…]中的內(nèi)
容時,該選擇結(jié)構(gòu)只對條件滿足的情況進(jìn)行處理。執(zhí)
行過程如圖4-1所示。
條件滿足?
TF
VV
圖4.1塊丘例行過程
【例4.1】火車站行李費(fèi)的收費(fèi)標(biāo)準(zhǔn)是50kg以內(nèi)
(包括50kg)0.20/kg,超過部分0.50/kg。編寫程序,
要求根據(jù)輸入的任意重量,計(jì)算出應(yīng)付的行李費(fèi)。
根據(jù)題意計(jì)算公式如下:
weightX0.2weightW50
Pay=
(weight—50)X0.5+SOX0.2weight>50
運(yùn)行界面加圖4-2所示。
04.2例4.1過行界面
遇窈獨(dú)HE
時家屬性設(shè)置如表4-1所不。
表44例4.1屬性控件設(shè)置
對象良性設(shè)置
LabellCation行李里是
LabeDcqjtion成忖款
TeMlText交
對象屎性設(shè)置
te址2Text交
Ccmn^ndlcaption計(jì)算
Conmi?Md2caption活除
Commandscaption退出
fbnnlcation行李托正權(quán)贊程庠
HE
程序代碼如下:
…計(jì)算,,按鈕代碼
PrivateSubCommandl_Click()
Dimweightassingle,payassingle
weight=Textl.Text
Ifweight>50Then
pay=(weight-50)*0.5+50*0.2
Else
pay=weight*0.2
EndIf
Textl.Text=pay
EndSub
PrivateSubCommand2_Click()
Text1.Text=
Textl.Text=''''
EndSub
PrivateSubCommand3_Click()
End
EndSub
4.1.2塊If的嵌套
所謂塊If語句的嵌套,就是在語句塊1或語句塊2中
又包含塊If語句。
【例4.2】任意輸入3個數(shù),按照從大到小的順序輸
出。
算法分析:排序的基本方法,就是比較大小,然
后根據(jù)比較的結(jié)果分別加以處理。本例把3個數(shù)分別放
在N,B,C中,處理過程為:若4VB為真,交換力,B
的值;否則不做處理。這樣就保證了/泗;然后再用C
去比較。具體流程如圖4-3所示。按如圖4-4所示設(shè)置
界面。
-------------
-------------1
__!丁L
相出c,a,b儲出&&cI箱田&C,b
圖49例4.2程序流程圖;S^H
右鍵換頁!V合
屬性設(shè)置如表4-2所示。
表42例4.2控件屬性設(shè)置
對俊屎性設(shè)置
hbelll^bel3Cation分別為4乩C
labe14-lab電16Coption分別為大.中?小
textlfe泣6Text空
CcmnmdlC4rtion擇序
Conttn^nd2C^tiotn退出
FoimlCsption梯序
程序代碼如下:
一排序”按鈕代碼
PrivateSubCommandl_Click()
DimaAsSingle,cAsSingle,bAsSingle
a=Textl.Text
b=Textl.Text
c=Text3.Text,三個文本框的數(shù)據(jù)賦值給變量
Ifa<bThen
t=a
a=b
b=t%v〃時交換〃、力的值
EndIf,保證/
Ifc>aThen,用C去比較
Text4.Text=c成立,C最大
Text5.Text=a
Text6.Text=b
Else
Ifc<bThen
Text4.Text=a成立,。最小
Text5.Text=b
Text6.Text=c
Text4.Text=a處于中間
Text5.Text=c
Text6.Text=b
EndIf
EndIf
EndSub
…退出"按鈕代碼
PrivateSubCommand2_Click()
End
EndSub
4.2EkeIf語句
格式:
If條件1then
語句塊1
Elself條件2then
語句塊2
[Else
語句塊n+1]
EndIf
功能:
(1)依次判斷條件,如果找到一個滿足的條件,
則執(zhí)行其下面的語句塊,然后跳過EndIf,執(zhí)行后面
的程序。
(2)如果所列出的條件都不滿足,則執(zhí)行Eke語
句后面的語句塊;如果所列出的條件都不滿足,又沒
有Else子句,則直接跳過Endlf,不執(zhí)行任何語句塊。
Elself結(jié)構(gòu)的執(zhí)行過程如圖4-6所示o
【例4.4】輸入一個學(xué)生的一門課分?jǐn)?shù)%(百分制),
當(dāng)它90時,輸出“優(yōu)秀”;當(dāng)80。<90時,輸出“良
好”;當(dāng)70Sr<80時,輸出“中”;當(dāng)60封〈70時,
輸出“及格”,當(dāng)x〈60時,輸出“不及格”。
算法分析:本例適合用多路分支結(jié)構(gòu)來解決。運(yùn)
行界面如圖4-7所示。
自
監(jiān)
歸
汕
y
.一
不
8
4國
屬性設(shè)置如表4-4所示。
表44例4.4控件屬性設(shè)置
對象屎性設(shè)置
Caption,鑒定
cammmd2Cation退出
L^bellCation轄人分?jǐn)?shù)
L^beDCsjjtion檔次
TextlText空
Text2Te泣空
FoimlCeptioii成績分段鑒足
HE
程序代碼如下:
…鑒定”按鈕代碼
PrivateSubCommandl_Click()
Dimscore!
score=Textl.Text
Ifscore>=90Then
Textl.Text="優(yōu)秀"
Elselfscore>=80Then
Textl.Text="良好"
Elselfscore>=70Then
Textl.Text="中”
Elselfscore>=60Then
Text2.Text="及格"
Else
Text2.Text="不及格"
EndIf
EndSub
,“退出”按鈕代碼
PrivateSubCommand2_Click()
End
EndSub
Elself語句,實(shí)際完成的是塊If的嵌套,它和塊If
嵌套的格式上有很大區(qū)別,Elself結(jié)構(gòu)只有一對If和
Endlf語句。另外應(yīng)注意:
[Else
If]
和【Elself】的區(qū)另h
4.3行耳語句
格式:If條件then語句1[Else語句2]
功能:當(dāng)條件滿足時,執(zhí)行語句1;條件不滿足時,
執(zhí)行語句2。
從行If的格式和功能不難看出,行If語句是一種簡
單的分支結(jié)構(gòu),只是把一個簡單的塊If結(jié)構(gòu)寫在一行
中,減少了語句行,省略了“EndI產(chǎn)的書寫。行If完
全可以用塊If代替。
【例4.6】任意輸入3個數(shù),找出其中的最大值。
圖4?10喇4.6運(yùn)行界面
運(yùn)行界面如圖4-10所示。
各屬性設(shè)置如表4-6所不。
表46例46屬性設(shè)置
好象設(shè)置
FctmilCation枝最大但
Textl-text4text空
L^bellCaption轄人3個景
Label2Cation最大悵
Command1Caption計(jì)算
HE
程序代碼如下:
PrivateSubCommandl_Click()
DimaAsSingle,bAsSingle,cAsSingle,
AsSingle
a=Textl.Text
b=Textl.Text
c=Text3.Text
max=a
Ifb>maxThenmax=b
Ifc>maxThenmax=c
Text4.Text=max
EndSub
4.4SelectCase語句
當(dāng)對一個表達(dá)式的不同取值情況作不同處理時,
用Elself語句程序結(jié)構(gòu)顯得較為雜亂,而用Sel
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 糧油加工廠出租居間合同
- 汽車美容店裝修監(jiān)理合同
- 二零二五年度辦公室勞動合同地址確認(rèn)及員工績效獎金協(xié)議
- 裝修分期付款合同須知
- 報關(guān)合同和銷售合同
- 新勞動合同法規(guī)定
- 三農(nóng)村電商行業(yè)監(jiān)管與政策支持方案
- 軟件開發(fā)流程與項(xiàng)目管理作業(yè)指導(dǎo)書
- 居間合同物權(quán)方
- 建筑裝飾裝修工程作業(yè)指導(dǎo)書
- 家具廠各崗位責(zé)任制匯編
- 顳下頜關(guān)節(jié)盤復(fù)位固定術(shù)后護(hù)理查房
- 硝苯地平控釋片
- 四川省瀘州市2019年中考物理考試真題與答案解析
- 部編版語文六年級下冊全套單元基礎(chǔ)常考測試卷含答案
- 提高檢驗(yàn)標(biāo)本合格率品管圈PDCA成果匯報
- 2023年保險養(yǎng)老地產(chǎn)行業(yè)分析報告
- 世界古代史-對接選擇性必修(真題再現(xiàn)) 高考?xì)v史一輪復(fù)習(xí)
- 保險公司防火應(yīng)急預(yù)案
- 動物檢疫技術(shù)-動物檢疫的分類(動物防疫與檢疫技術(shù))
- 2024醫(yī)師資格考試考生誠信考試承諾書
評論
0/150
提交評論