《流程控制》PPT课件.ppt

上传人:牧羊曲112 文档编号:5546794 上传时间:2023-07-19 格式:PPT 页数:49 大小:495KB
返回 下载 相关 举报
《流程控制》PPT课件.ppt_第1页
第1页 / 共49页
《流程控制》PPT课件.ppt_第2页
第2页 / 共49页
《流程控制》PPT课件.ppt_第3页
第3页 / 共49页
《流程控制》PPT课件.ppt_第4页
第4页 / 共49页
《流程控制》PPT课件.ppt_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《《流程控制》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《流程控制》PPT课件.ppt(49页珍藏版)》请在三一办公上搜索。

1、1,第六章,流程控制,2,課程內容,6-1 結構化程式設計6-2 條件判斷6-3 比較運算6-4 邏輯運算6-5 運算子的優先順序6-6 核取方塊(Check Box),3,學習重點,IfThen End if.例如:假如喜歡,(然後)就買回家。If.Then Else.End if.例如:假如喜歡,(然後)就買回家,不然欣賞就好。核取方塊 例如:點菜單、價目表等,4,6-1 結構化程式設計結構化程式設計(Structured programming)是設計、撰寫程式的一種方式它的宗旨在於簡化程式設計的流程,以及減少邏輯錯誤發生的機會結構化程式設計是使用控制流程的結構(Control-flow

2、 structure)、由上而下的一種設計方式區塊(block structure)的概念,5,循序結構循序結構的敘述會依照它們出現的順序來執行,控制權無條件的由一個敘述緊接著一個敘述、循序的傳遞下去循序結構是最基礎、簡單的一種方式它的邏輯圖如下所示,6,選擇結構二元選擇結構If Condition Then Statement程式執行到這個結構時,會先去測試條件(Condition)如果結果為True(真),那麼就執行Then後面的敘述(Statement)如果測試條件最後為False(假),那麼就不去理會Then後面的敘述,而直接將控制權轉移至If的下一個敘述這種結構的邏輯圖如下,7,If

3、 Condition Then Statement A Else Statement B程式執行這個結構時,會先去測試條件(Condition)如果結果為True(真),那麼就執行Then後面的敘述(Statement)如果結果為False(假),就執行Else後面的敘述(Statement B)不論執行了Statement A或是Statement B,執行過後都會將控制權轉移至If的下一個敘述邏輯圖如下所示,8,多元選擇結構在各種情況中,視情況選擇一組符合條件的動作來執行其邏輯圖如下,9,重複結構重複結構一般又稱為迴圈(loop)或循環(iteration)在迴圈結構中,通常會有一個測試條

4、件,決定何時終止重複執行由於測試條件所出現的位置不同,又區分為前測式迴圈與後測式迴圈兩種,10,前測式迴圈前測式迴圈是在執行迴圈指令前先做測試,測試結果為True時,才會進入迴圈進入迴圈之後,開始執行Statement部分;執行過Statement的部分後,再繞回迴圈的測試點進行測試如果結果仍然為True,則再度進入Statement的部分執行如此週而復始不斷執行,直到測試條件變成False時,執行迴圈結構的下一個敘述如果測試條件永遠不會是False時,那麼迴圈就無法停止,形成所謂的無窮迴圈(Infinite loop),11,後測式迴圈不論測試條件為何,先執行迴圈指令之後再做測試如果測試結果

5、為True時,才會離開迴圈,否則再度進入迴圈其邏輯圖如下所示,12,6-2 條件判斷下圖是Visual Basic語言中所提供與條件判斷相關的各種語法、函數分類圖,13,If.Then敘述單行式If 條件式 Then 當條件式為True時要執行的動作條件式(Condition)放的是比較(Comparison)運算或比較運算加邏輯運算的動作比較運算:將兩個資料以比較運算子連接。所得的結果是一個Boolean型別資料(True或False)如果在條件式中要進行一個以上的比較運算,那麼這些比較敘述間必須以邏輯運算子連接比較運算子的優先順序高於邏輯運算子If A=B And C 1 Then Lab

6、el1=“條件成立”If(A=B)And(C 1)Then A=B:C=C+1If(A=B)And(C 1)Then A=B:_ C=C+1,加一個空格及底線,就連上下一列敘述,14,範例視窗在關閉之前會先詢問使用者是否真的要關閉它如果使用者回答是(Y),那就關閉視窗、把程式結束如果回答否(N),那麼就取消關閉的動作,一切恢復正常 說明這個範例程式的表單不需要放置任何的控制項,15,當使用者用滑鼠在右上方的關閉鈕上按鈕時,螢幕上會出現如下圖所示的訊息對話方塊,詢問使用者是否要結束視窗,如果按下是(Y),則關閉全部視窗,按否(N)則會到原來的視窗,16,步驟修改表單上的屬性,在form的Quer

7、yUnload事件程序中填入程式碼1.Private Sub Form_QueryUnload(Cancel As Integer,UnloadMode As Integer)2.Dim ReturnCode As Integer3.ReturnCode=MsgBox(“要關閉視窗嗎?”,vbExclamation+vbYesNo,“詢問”)4.If ReturnCode=vbNo Then Cancel=True5.End Sub,17,當關閉應用程式時,可使用 QueryUnload 或 Unload 事件程序,將 Cancel 屬性設定為 True 來阻止關閉程序。然而,QueryUnl

8、oad 事件是發生在所有表單中任何一個釋放前,而 Unload 是在每個表單釋放時發生。目的:如果還未儲存某一表單中的新資料,應用程式會提示儲存該資料。,18,區塊式If 條件式 Then.當條件式為True時要執行的動作.End If例如:If(A=B)And(C 1)Then A=B:C=C+1 等同於If(A=B)And(C 1)Then A=B C=C+1End If,19,If.Then.Else敘述單行式If 條件式 Then 條件式True時的動作 Else 結果為False的動作區塊式If 條件式 Then.當條件式為True時要執行的動作.Else.當條件式為False時要執

9、行的動作.End If,20,範例運用IfThenElse敘述來判斷使用者按下訊息對話方塊上的不同按鈕,並做出不同的回應說明開始執行時,表單上只有一個命令鈕我想問問題,21,用滑鼠在我想問問題上按鈕,螢幕上會出現如下圖所示的訊息對話方塊,詢問使用者,如果按下是(Y),則訊息對話方塊消失後,在原先視窗的標籤上會出現如下圖所示的字樣,22,按否(N)則會出現如下的樣子,23,步驟在表單上放一個標籤及一個命令鈕控制項修改表單、標籤、及命令鈕上的屬性,24,在cmdDisplay的click事件程序中填入程式碼1.Private Sub cmdDisplay_Click()2.Dim ReturnCo

10、de As Integer3.ReturnCode=MsgBox(您有錢嗎?,vbInformation+vbYesNo,人生一問)4.If ReturnCode=vbYes Then5.lblResult=分我一點吧!6.Else7.lblResult=我也沒錢耶!8.End If9.End Sub,25,IIf函數IIf(條件式,當條件式為True時的值,當條件式為False時的值)例如:J=IIf(S=60,“及格”,“不及格”)當S大於等於60時,則傳回字串“及格”,也就是說J會存入“及格”這個字串如果S小於60,那麼就傳回字串“不及格”,而J中會存入字串“不及格”,26,6-3 比較

11、運算兩個運算元(Operand)透過中間的比較運算子(Operator)所做的運算比較運算後的結果只有三種:True、False或Null,A、B分別代表運算元,可以是數字、字串或其他運算的結果當A或B中有任何一者為Null時,經比較的結果都會是Null,27,6-4 邏輯運算And運算子,28,範例一般邏輯運算都是放在IfThen等敘述的條件式部分,但是他們也可以作為位元運算符號這個例子所示範的是3(二進位值為00000011)與2(二進位值為00000010)透過And做二進位算,並將最後結果存入Label1標籤中顯示步驟請先在Form上面放置一個Label控制項,29,在Form的For

12、m_Load事件程序中填入下列程式碼,按下F5開始執行。執行的結果如下圖所示,30,Or運算子,31,Not運算子,在Visual Basic中的False相當於0,True相當於-1False值以二進位表示:0000000000000000True True=Not falseFalse=Not True,32,Xor運算子,33,Eqv運算子,34,Imp運算子,35,6-5 運算子的優先順序,高,低,36,6-6 核取方塊(Check Box)所謂的核取方塊,核取方塊(CheckBox),選項按鈕(Option Button),37,用滑鼠Click一下方框(的部分),方框中就會出現一個

13、”的符號,這就表示您選取了這個功能如果用滑鼠再Click一下,方盒就會變回空白,表示您不選取這個功能了 核取方塊彼此之間的功能都是獨立的以核取方塊的運作方式就像是複選題;在一群選項中可以選擇好幾個,38,放置核取方塊放置方式與其他控制項的方式是一樣的當核取方塊與框架(Frame)合用時,由於牽涉到群組的概念,步驟比較複雜一點,在工具箱中的核取方塊圖示,在表單中的核取方塊,39,常用的屬性Caption:標題屬性字串顯示在核取盒的右方,告訴使用者這個核取方塊所代表的功能為何Value:表示核取方塊在執行時的三種狀態,分別是0、1、2,預設值為0,其說明如下0表示不核取,也就是說,在執行時核取方塊

14、呈現不打勾的狀態1表示核取,在執行時核取方塊呈現打勾的狀態2灰色這個設定值比較特別,核取方塊會呈現打勾的狀態,但以灰色(或模糊)顯示之表示忽略這個選項或這個選項沒有作用使用者不能以滑鼠click直接”按”出這個狀態,但可以透過程式碼來設定,40,核取方塊實作範例電腦上的顏色是由RGB三種原色所構成的,R代表Red(紅色)、G代表Green(綠色)、B代表Blue(藍色)在Visual Basic中每一個顏色成分用一個位元組的數值來代表(0&HFF)Visual Basic在三個位元組前再多加了一個位元組,區分物件所使用的顏色是屬於系統配色,還是調色盤中自訂的顏色這個例子就是利用核取方塊多選的特

15、性,設計一個簡單的純色混色機用三個核取方塊代表RGB三個原色是否加入混色如果使用者核取其中一個核取方塊,那就代表要將該顏色加入混色混色的結果會顯示在一個標籤控制項上。,41,說明範例程式開始執行時,您會看到一個標籤控制項及三個核取方塊標籤控制項一開始的內容是黑色的而三個核取方塊控制項分別代表紅色成分、綠色成分、藍色成分,42,使用者以滑鼠在代表紅色成分的核取方塊上Click時,標籤控制項就會顯示出紅色的純色,1.在代表紅色的核取方塊上Click,2.顯示出紅色,在代表藍色的核取方塊上Click,Label的顏色又會再混入藍色成分,於是就成了紫色,43,步驟先在表單上放置一個標籤及四個核取方塊,

16、修改屬性設定值,44,分別在chkRed、chkGreen、與chkBlue的Click事件程序中填入程式碼,1.Private Sub chkBlue_Click()2.If chkBlue.Value Then3.lblPanel.BackColor=lblPanel.BackColor Or&HFF00004.Else5.lblPanel.BackColor=lblPanel.BackColor Xor&HFF00006.End If7.End Sub8.Private Sub chkGreen_Click()9.If chkGreen.Value Then10.lblPanel.Bac

17、kColor=lblPanel.BackColor Or&HFF00&11.Else12.lblPanel.BackColor=lblPanel.BackColor Xor&HFF00&13.End If14.End Sub15.Private Sub chkRed_Click()16.If chkRed.Value Then17.lblPanel.BackColor=lblPanel.BackColor Or&HFF&18.Else19.lblPanel.BackColor=lblPanel.BackColor Xor&HFF&20.End If21.End Sub,45,例題,設計一學費計算表,其中鍵入資料包括學號、姓名、學費、住宿與膳食:學費:10000元住宿:1000元(每月)、月份膳食:2000元(每月)、月份輸出畫面:包括各項與總合計算、清除、結束,46,47,48,49,作業七,設計一點菜單,其中鍵入資料包括桌次、麵、湯、炒飯等設計。麵:50元(牛肉麵/每碗)、數量湯:30元(青菜蛋花湯/每碗)、數量炒飯:50元/每盤、數量輸出畫面:包括各項與總合計算、清除、結束,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号