選擇結(jié)構(gòu)程序設(shè)計(jì)_第1頁(yè)
選擇結(jié)構(gòu)程序設(shè)計(jì)_第2頁(yè)
選擇結(jié)構(gòu)程序設(shè)計(jì)_第3頁(yè)
選擇結(jié)構(gòu)程序設(shè)計(jì)_第4頁(yè)
選擇結(jié)構(gòu)程序設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

選擇結(jié)構(gòu)程序設(shè)計(jì)第1頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月4.1選擇結(jié)構(gòu)程序設(shè)計(jì)的概念4.2條件表達(dá)式4.2.1關(guān)系運(yùn)算符與關(guān)系表達(dá)式關(guān)系表達(dá)式是指用關(guān)系運(yùn)算符將兩個(gè)表達(dá)式連接起來(lái)的式子(例如a+b>0),關(guān)系運(yùn)算符又稱(chēng)比較運(yùn)算符,用來(lái)對(duì)兩個(gè)表達(dá)式的值進(jìn)行比較,比較的結(jié)果是一個(gè)布爾值(True或False),這個(gè)結(jié)果就是關(guān)系表達(dá)式的值。1.關(guān)系運(yùn)算符

VB提供的關(guān)系運(yùn)算符有以下6種,如表4-1所示。第2頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月2.關(guān)系表達(dá)式關(guān)系表達(dá)式的格式為〈表達(dá)式1〉〈關(guān)系運(yùn)算符〉〈表達(dá)式2〉[〈關(guān)系運(yùn)算符〉〈表達(dá)式3〉…]4.2.3運(yùn)算符的優(yōu)先順序第3頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月【例4-2】判斷某個(gè)年份是閏年的根據(jù)是年份數(shù)滿(mǎn)足下述條件之一。

(1)能被4整除,但不能被100整除的年份都是閏年。

(2)能被100整除,又能被400整除的年份都是閏年。設(shè)變量y表示年份,寫(xiě)出判斷y是否閏年的布爾表達(dá)式。解:判斷y是否滿(mǎn)足條件(1)的布爾表達(dá)式是yMod4=0AndyMod100<>0

判斷y是否滿(mǎn)足條件(2)的布爾表達(dá)式是yMod100=0AndyMod400=0

兩者取“或”,即得判斷閏年的布爾表達(dá)式y(tǒng)Mod4=0AndyMod100<>0OryMod100=0AndyMod400=0第4頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月4.3單條件選擇語(yǔ)句IF

4.3.1單行結(jié)構(gòu)條件語(yǔ)句IF…THEN…ELSE

單行If語(yǔ)句的語(yǔ)法格式為If〈條件〉Then[〈語(yǔ)句序列1〉][Else〈語(yǔ)句序列2〉]【例4-3】輸入x,計(jì)算y的值。其中:第5頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月設(shè)計(jì)步驟如下:

(1)建立應(yīng)用程序用戶(hù)界面與設(shè)置對(duì)象屬性(2)編寫(xiě)程序代碼。根據(jù)流程圖,可以寫(xiě)出命令按鈕Command1的單擊(Click)事件代碼為PrivateSubCommand1_Click()DimxAsSingle,yAsSinglex=Val(Text1.Text)Ifx>=0Theny=1+xElsey=1–2*xText2.Text=yEndSub第6頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月【例4-5】利用輸入框函數(shù)輸入3個(gè)不同的數(shù),選出其中最大的數(shù)。分析:若a是a、b、c三個(gè)數(shù)中的最大數(shù),則應(yīng)有a>b并且a>c,依此類(lèi)推。設(shè)計(jì)步驟如下:

(1)建立應(yīng)用程序用戶(hù)界面與設(shè)置對(duì)象屬性。(2)編寫(xiě)程序代碼。根據(jù)流程圖,可以寫(xiě)出命令按鈕Command1的單擊(Click)事件代碼為PrivateSubCommand1_Click()DimaAsSingle,bAsSingle,cAsSinglea=Val(InputBox("請(qǐng)輸入第1個(gè)數(shù):","輸入框",0))b=Val(InputBox("請(qǐng)輸入第2個(gè)數(shù):","輸入框",0))c=Val(InputBox("請(qǐng)輸入第3個(gè)數(shù):","輸入框",0))p=""&a&","&b&","&cp=p&"三個(gè)數(shù)中最大的數(shù)是:"Ifa>bAnda>cThenp=p&aIfb>aAndb>cThenp=p&bIfc>aAndc>bThenp=p&cLabel1.Caption=pEndSub第7頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月4.3.2使用IIF函數(shù)還可以使用IIf函數(shù)來(lái)實(shí)現(xiàn)一些比較簡(jiǎn)單的選擇結(jié)構(gòu)。IIf函數(shù)的語(yǔ)法結(jié)構(gòu)為IIf(〈條件表達(dá)式〉,〈真部分〉,〈假部分〉)【例4-6】例4-3中命令按鈕Command1的單擊(Click)事件代碼可以改為PrivateSubCommand1_Click()DimxAsSingle,yAsSinglex=Val(Text1.Text)y=IIf(x>=0,1+x,1–2*x)Text2.Text=yEndSub第8頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月4.3.3塊結(jié)構(gòu)條件語(yǔ)句IF…THEN…ELSE…ENDIF其語(yǔ)法結(jié)構(gòu)為If〈條件1〉Then[語(yǔ)句列1][Else[語(yǔ)句列2]]EndIf4.3.4IF語(yǔ)句的嵌套1.IF語(yǔ)句的嵌套第9頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月【例4-8】鐵路托運(yùn)行李,從甲地到乙地,規(guī)定每張客票托運(yùn)費(fèi)計(jì)算方法是行李重量不超過(guò)50kg時(shí),0.25元/kg,超過(guò)50kg而不超過(guò)100kg時(shí),其超過(guò)部分按0.35元/kg收費(fèi),超過(guò)100kg時(shí),其超過(guò)部分按0.45元/kg收費(fèi)。編寫(xiě)程序,輸入行李重量,計(jì)算并輸出托運(yùn)的費(fèi)用。分析:設(shè)行李重量為wkg,應(yīng)付運(yùn)費(fèi)為x元,則運(yùn)費(fèi)公式為第10頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月設(shè)計(jì)步驟如下:

(1)建立應(yīng)用程序用戶(hù)界面與設(shè)置對(duì)象屬性。(2)編寫(xiě)程序代碼。根據(jù)流程圖,可以寫(xiě)出命令按鈕Command1的單擊(Click)事件代碼為PrivateSubCommand1_Click()DimwAsSingle,xAsSinglew=Val(Text1.Text)Ifw<=50Thenx=0.25*wElseIfw<=100Thenx=0.25*50+0.35*(w–50)Elsex=0.25*50+0.35*50+0.45*(w–100)EndIfEndIfText2.Text=xEndSub第11頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月2.IF語(yǔ)句的嵌套格式ELSEIF其語(yǔ)法結(jié)構(gòu)為If〈條件1〉Then[語(yǔ)句列1]ElseIf〈條件2〉Then[語(yǔ)句列2]...[Else[其他語(yǔ)句列]]EndIf第12頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月【例4-10】在例4-9中使用帶ElseIf的塊If語(yǔ)句來(lái)計(jì)算出優(yōu)惠價(jià),只需將其中命令按鈕Command1的單擊(Click)事件代碼改為PrivateSubCommand1_Click()DimxAsSingle,yAsSinglex=Val(Text1.Text)Ifx<1000Theny=xElseIfx<2000Theny=0.95*xElseIfx<3000Theny=0.9*xElseIfx<5000Theny=0.85*xElsey=0.08*xEndIfText2.Text=yEndSub第13頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月4.4多分支條件選擇語(yǔ)句SELECTCASE4.4.1SELECTCASE結(jié)構(gòu)與語(yǔ)法SelectCase語(yǔ)句的語(yǔ)法格式為SelectCase〈測(cè)試條件〉[Case〈表達(dá)式表1〉[〈語(yǔ)句列1〉]][Case〈表達(dá)式表2〉[〈語(yǔ)句列2〉]]...[CaseElse[〈其他語(yǔ)句列〉]]EndSelect第14頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月4.5使用計(jì)時(shí)器控件【例4-13】在窗體上設(shè)計(jì)一個(gè)數(shù)字時(shí)鐘,如圖4-15所示。圖4-15數(shù)字時(shí)鐘第15頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月設(shè)計(jì)步驟如下:

(1)建立應(yīng)用程序用戶(hù)界面。

(2)設(shè)置對(duì)象屬性

(3)編寫(xiě)程序代碼。編寫(xiě)計(jì)時(shí)器控件Timer1的Timer事件代碼:PrivateSubTimer1_Timer()Label1.Caption=Format(Time,Form1.Tag)Label2.Caption=IIf(Hour(Time)>12,"下午","上午")EndSub

第16頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月編寫(xiě)命令按鈕Command1的Click事件代碼:PrivateSubCommand1_Click()IfCommand1.Caption="改為12小時(shí)"ThenForm1.Tag="hh:mm:ssAM/PM"Command1.Caption="改為24小時(shí)"Label2.Visible=TrueElseForm1.Tag="hh:mm:ss"Command1.Caption="改為12小時(shí)"Label2.Visible=FalseEndIfEndSub第17頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月4.5.3設(shè)計(jì)一個(gè)流動(dòng)字幕板【例4-15】為一個(gè)應(yīng)用系統(tǒng)設(shè)計(jì)流動(dòng)字幕板,如圖4-19所示,標(biāo)題“欲窮千里目,更上一層樓”在窗體中自右至左地反復(fù)移動(dòng)。

圖4-19電子標(biāo)題板圖4-20用戶(hù)界面的設(shè)計(jì)第18頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月

(2)編寫(xiě)程序代碼。編寫(xiě)命令按鈕Command1的Click事件代碼:PrivateSubCommand1_Click()IfCommand1.Caption="&S暫停"ThenCommand1.Caption="&C繼續(xù)"Timer1.Enabled=FalseElseCommand1.Caption="&S暫停"Timer1.Enabled=TrueEndIfEndSub編寫(xiě)Timer1的Timer事件代碼:PrivateSubTimer1_Timer()IfLabel1.Left+Label1.Width>0ThenLabel1.MoveLabel1.Left–20ElseLabel1.Left=Form1.ScaleWidthEndIfEndSub設(shè)計(jì)步驟如下:

(1)建立應(yīng)用程序用戶(hù)界面與設(shè)置對(duì)象屬性。第19頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月4.6提供簡(jiǎn)單選擇的控件4.6.1選項(xiàng)按鈕

使用選項(xiàng)按鈕組【例4-16】在例4-13中使用選項(xiàng)按鈕組來(lái)選擇時(shí)間的格式,如圖4-21所示。

圖4-21使用選項(xiàng)按鈕組第20頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月設(shè)計(jì)步驟如下:

(1)修改程序用戶(hù)界面與設(shè)置對(duì)象屬性。

(2)編寫(xiě)新增控件的事件代碼。編寫(xiě)選項(xiàng)按鈕Option1的Click事件代碼:PrivateSubOption1_Click()Form1.Tag="hh:mm:ssAM/PM"Label2.Visible=TrueEndSub

編寫(xiě)選項(xiàng)按鈕Option2的Click事件代碼:PrivateSubOption2_Click()Form1.Tag="hh:mm:ss"Label2.Visible=FalseEndSub第21頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月2.使用圖形選項(xiàng)按鈕【例4-18】用圖形選項(xiàng)按鈕組控制流動(dòng)字幕中的字體,如圖4-23所示。

圖4-23圖形選項(xiàng)按鈕組第22頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月設(shè)計(jì)步驟如下:

(1)建立應(yīng)用程序用戶(hù)界面與設(shè)置對(duì)象屬性。

(2)編寫(xiě)程序代碼。依次編寫(xiě)選項(xiàng)按鈕Option1~Option4的Click事件代碼:PrivateSubOption1_Click()Text1.FontName="宋體"EndSubPrivateSubOption2_Click()Text1.FontName="隸書(shū)"EndSubPrivateSubOption3_Click()Text1.FontName="黑體"EndSubPrivateSubOption4_Click()Text1.FontName="楷體_GB2312"EndSub第23頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月2.使用多個(gè)復(fù)選框【例4-20】設(shè)計(jì)一個(gè)個(gè)人資料輸入窗口,使用選項(xiàng)按鈕組輸入性別與民族,使用復(fù)選框輸入個(gè)人愛(ài)好,如圖4-25所示。設(shè)計(jì)步驟如下:

(1)建立應(yīng)用程序用戶(hù)界面。

(2)設(shè)置對(duì)象屬性。

圖4-25使用多個(gè)復(fù)選框圖4-26建立用戶(hù)界面第24頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月

(3)編寫(xiě)程序代碼。編寫(xiě)命令按鈕Command1的事件代碼:

Click事件:PrivateSubCommand1_Click()IfText1.Text=""Thena=InputBox("您忘了輸入姓名!","注意","請(qǐng)?jiān)诖溯斎胄彰?)Ifa=""Ora="請(qǐng)?jiān)诖溯斎胄彰?ThenExitSubText1.Text=aEndIfp1=Text1.Text+","p2=IIf(Option1,"男","女")+","p3=IIf(Option3,"漢族","少數(shù)民族")p4=",喜歡:"第25頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月

IfCheck1.Value=1Thenp4=p4+Check1.Caption+"、"IfCheck2.Value=1Thenp4=p4+Check2.Caption+"、"IfCheck3.Value=1Thenp4=p4+Check3.Caption+"、"IfCheck4.Value=1Thenp4=p4+Check4.Caption+"、"aa=p1+p2+p3+IIf(p4=",喜歡:",",無(wú)愛(ài)好。",p4)Label4.Caption=Left(aa,Len(aa)–1)+"。"Text1.SetFocusEndSub

編寫(xiě)文本框Text1的Change事件代碼:PrivateSubText1_Change()Label4.Caption=""EndSub第26頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月習(xí)題四

4.1

寫(xiě)出下列各表達(dá)式的值。

(1)2*3>=8 (2)"BCD"<"BCE" (3)"12345"<>"12345"&"ABC" (4)Not2*5<>11 (5)4=4And5>2+2 (6)8<>5OrNot10>12+3 (7)2^3>3And5<10 (8)3>4And7=54.2

用布爾表達(dá)式表示下列命題。

(1)n是m的倍數(shù) (2)n是小于正整數(shù)k的偶數(shù)

(3)|x|≥|y|或x<y (4)x,y其中有一個(gè)小于z (5)x,y都小于z (6)y[–10,–1],并且y[1,10]第27頁(yè),課件共31頁(yè),創(chuàng)作于2023年2月4.3

根據(jù)所給條件,列出布爾表達(dá)式。

(1)閏年的條件是:年號(hào)(year)能被4整除,但是不能被100整除;或者能被400整除。

(2)一元二次方程ax2+bx+c=0有實(shí)根的條件為:a≠0,并且b2–4ac

≥0。

(3)征兵的條件是:男性(sex)年齡(age)在18~20歲之間,身高(size)在1.65m以上;或者女性(sex)年齡(age)在16~18歲之間,身高(size)在1.60m以上。

(4)分房的條件為:已婚(marrigerat),年齡(age)在26歲以上,工作年限(workingage)在5年以上。

4.4“x是小于100的非負(fù)數(shù)”,用VB表達(dá)式表示正確的是

(1)0≤x<100 (2)0<=x<100 (3)0<=x

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論