資源簡介 (共29張PPT)2.2 算法的控制結構1.順序結構2.分支結構(選擇結構)3.循環結構語句1語句2語句3NY語句塊1語句塊2條件表達式 NY語句塊1語句塊2條件表達式 三種基本結構流程圖按照順序從上往下依次執行,每條語句必須且只執行一次。語句1語句2語句3選擇乘車日期和車次選擇或添加乘車人提交購票訂單網上支付購票款順序結構根據條件判斷選擇不同的分支執行:條件為真時執行Y指向的語句,否則執行N指向的語句。選擇結構中,必有一個分支被執行,其余分支不執行。NY語句塊1語句塊2條件表達式 分支結構(選擇結構)當表達式為真時,執行語句塊;否則什么都不執行。單分支結構當表達式為真時,執行語句塊1;否則(表達式為假)執行語句塊2。雙分支結構NY語句塊1語句塊2條件表達式 語句塊YN條件表達式是否為真?分支結構(選擇結構)特點:條件判斷選擇不同分支,一次只執行一個分支,其余分支不執行當<表達式1>條件成立時,執行<語句塊1>, 本結構結束。若為假,則判斷<表達式2>,依此類推。直到找到一個為真的條件時,才執行相應的語句塊,本結構結束。分支結構(選擇結構)NNNYYY先進行某個條件判斷,當符合條件時,執行Y指向的語句(循環體),然后返回重新判斷這個條件,當符合條件時,再次執行循環體。重復上述過程,直到不符合條件,則跳出循環,執行循環體后面的指令。若循環條件始終滿足?算法無限循環,違背有窮性NY語句塊1語句塊2條件表達式 死循環循環結構 在流程圖中識別算法控制結構的方法:若按照流程線方向能構成一個環,則是循環結構;若有條件判斷但不構成環,則是分支結構;若沒有條件判斷,則是順序結構。分支結構與循環結構的區別小綠p17 例1 例3控 制 結 構注意點1.算法中一定要有順序結構。2.循環體可以重復執行,但是需要條件控制,是在條件控制下的循環。3.如果循環條件始終滿足,循環體就會永遠循環執行下去,造成“死循環”。違背算法的“有窮性”特征。4.無論多么復雜的算法,都可以用這三種基本控制結構組合而成。歸納小結該流程圖的功能是什么?求x,y,z三個數中的最大值分支結構的應用1.流程圖執行完成之后,求某變量的值。小綠p18——第2題、第3題、第4題、2.求循環條件執行幾次循環體執行幾次?循環條件一般比循環體多執行一次。小綠p18——第4題D選項、3.執行流程圖過程中求輸入變量的值,最后求結果。考點突破D1.流程圖執行完成之后,求某變量的值。小綠p18——第2題、第3題、第4題、2.求循環條件執行幾次循環體執行幾次?循環條件一般比循環體多執行一次。小綠p18——第4題D選項、3.執行流程圖過程中求輸入變量的值,最后求結果。考點突破C1.流程圖執行完成之后,求某變量的值。小綠p18——第2題、第3題、第4題、2.求循環條件執行幾次循環體執行幾次?循環條件一般比循環體多執行一次。小綠p18——第4題D選項、3.執行流程圖過程中求輸入變量的值,最后求結果。考點突破CB1.“若是本店會員,所有商品打8.5折,否則無折扣”,用算法描述這一問題,合適的算法結構是( )A.選擇結構 B.循環結構C.順序結構 D.樹形結構A練一練2.某算法流程圖如圖所示,當分別輸入x的值為1和7時,該算法的輸出結果分別為( )A.-24 19 B.7 19C.7 21 D.7 24D練一練3.對輸入的二個整數a和b,找出其中的較大者賦給c并輸出。解決該問題的算法流程圖如圖所示,該流程圖中虛線框部分的內容可為( )D練一練4.某算法如下圖所示,對于該算法理解正確的有( )A.該算法中包含循環結構和分支結構B.輸入電量a為100時,輸出y的值為53C.輸入電量a為200時,輸出y的值為110.5D.判斷框中代碼“a≥50?”可能會被判斷兩次C練一練5.某算法的部分流程圖如下圖所示。執行這部分流程后,“x←x-2”被執行的次數為( )A.0 B.1 C.2 D.3C練一練6.某算法的部分流程圖如圖所示。執行這部分流程,依次輸入3,4,-1,則輸出s的值是( )A.-2 B.-1C.0 D.1B練一練7.某算法的部分流程圖如圖所示,執行這部分流程后,下列說法正確的是( )A.步驟“x>y?”共執行了3次B.步驟“x←x-2”共執行了4次C.輸出的x,y值分別為4,6D.交換“x←x-2”和“y←y+1”的位置會影響執行結果C練一練8.程序通常需要三種不同的控制結構,即:順序結構、分支結構和循環結構,下面說法正確的是( )A.一個程序只能包含一種結構B.一個程序最多可以包含兩種結構C.一個程序可以包含以上三種結構中的任意組合D.一個程序必須包含以上三種結構C練一練請嘗試用設計一個能自動計算體質指數(BMI)并輸出的算法。注:體質指數 (Body Mass Index,簡稱BMI),是國際最常用來量度體重與身高比例的工具。它利用身高和體重之間的比例去衡量一個人是否過瘦或過胖。體質指數(BMI)=體重(kg)/身高 (m)^2練習1①輸入身高s②輸入體重t③計算BMI的值④輸出BMI的值輸入身高s(m)輸入體重t(kg)bmi = t/s^2輸出bmi開始結束練習1在上一個練習中,大家已經計算出了體質指數,對于數字,人們更關心自己是否健康,所以我們可以給上一個算法增加一個分支結構,使得輸出結果直接為健康狀態。注:體質指數的范圍< 18.5 過輕18.5-23.9 正常24-27.9 超重>28 肥胖練習2①輸入身高s②輸入體重t③計算BMI的值④根據BMI判斷健康狀態r⑤輸出健康狀態練習2一款猜數游戲的邏輯是這樣的:游戲開始生成一個[1,100]隨機數,玩家有5次機會進行猜數,每次猜測若不正確都會提示偏大還是偏小,如果5次以內猜中了,則輸出”勝利”,否則輸出”失敗”。練習3從簡單入手,先完成1次猜數的算法流程①生成隨機數n②輸入猜測的數字m③進行猜數判斷(略)生成隨機數n輸入mm>nYN輸出 “偏大”輸出 “偏小”mYN輸出 “勝利”練習3思考,這個猜數游戲是需要重復執行的步驟嗎?需要最多需要重復幾次?若猜數次數為K,初值為1那么每猜完一次后,K的值如何變化?k<=5YNk=1輸出 “失敗”k = k+1猜數練習3生成隨機數nk=1輸出 “失敗”k<=5YNk = k+1輸入mm>nYN輸出 “偏大”輸出 “偏小”mYN輸出 “勝利”小提示:當前算法中,當玩家勝利是,還會繼續猜數,我們應當及時讓他終止,因為他已經完成了游戲。練習3 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫