資源簡介 課時2 算法的控制結構課時目標1.能結合實例,理解算法三種控制結構的概念、特點及適用情境。2.能根據問題求解過程中數據和運算的特點,選擇合適的控制結構正確地設計、描述算法。3.理解各種控制結構在解決問題過程中綜合運用的必要性。1.順序結構在算法執行流程中,執行完一個處理步驟后,按照次序執行下一個步驟(如圖a)。順序結構的每個步驟按照算法中出現的順序依次執行;每個步驟一定會被執行一次,而且只執行一次。2.分支結構也稱為選擇結構。在算法執行流程中,先進行條件判斷,再根據判斷結果分別執行不同處理的控制結構(如圖b)。在一個分支結構中,必定有一個分支被執行,其他的分支則被忽略。3.循環結構算法執行過程中,在條件控制下,某些操作步驟需要重復執行(循環)的控制結構(如圖c)。循環結構的重復執行(循環)是在條件控制下的一種可控的重復,當需要重復處理的條件不滿足(或滿足)時,重復處理必須能及時結束。 例1 某商場促銷打折消費規定如下:消費500元以內的打8.8折;滿500元打8折,滿1000元及以上的打7折。用算法描述這一消費規定,合適的算法控制結構是 ( )A.順序結構 B.分支結構 C.循環結構 D.樹形結構答案 B解析 本題要求根據具體任務確定算法的控制結構。算法有順序、分支、循環三種基本結構,分析題目描述的促銷打折規定,結算時將視消費額分成三種情況進行不同的打折計算,這符合分支結構算法的控制轉移思想。變式訓練1 用輾轉相除法求兩個正整數的最大公約數的算法如下:①輸入兩個正整數m和n。②若m③用m除以n,相除得到余數r。④若r等于0,則輸出n的值,算法結束;否則,執行步驟⑤。⑤令m←n,n←r,返回步驟③繼續執行。該算法使用的控制結構是 ( )A.順序結構 B.分支結構 C.循環結構 D.樹形結構答案 C解析 本題主要考查的是算法的控制結構。步驟③④⑤構成了一個循環結構,因此答案為C。例2 角谷猜想描述如下:對于任意一個自然數n,若n為偶數,則將其除以2;若n為奇數,則將其乘以3,然后再加1。按此做法經過有限次的運算后,總可以得到自然數1。驗證角谷猜想的部分流程圖如圖所示,下列說法正確的是 ( )A.該流程圖只包含了分支結構B.將條件“n=1 ”改為“n>0 ”,功能相同C.語句“n←n×3+1”可能不會被執行D.輸入n的值為1時,算法將沒有輸出答案 C解析 本題考查算法的表示。A選項算法中循環結構中包含了選擇結構。B選項n>0的最小值為1。C選項當n值為1時不再循環,即最后一次循環之前n的值為2,當n的值為2的t次方時(t=1,2,3…),得到n的值均是偶數,因此“n←n×3+1”可能不會被執行。D選項當n的值為1,輸出驗證成功。變式訓練2 某算法的部分流程圖如圖所示。若輸入m和n的值分別為8和6,運行該算法后,以下說法正確的是 ( )A.“n≠0 ”共執行了2次B.若輸入m和n的值分別為6和8,運行結果不變C.該算法的功能為求解m和n的最大公約數D.流程圖標記“①”所在處理框中的語句調換次序不影響該算法的功能答案 B解析 本題考查算法的表示。a的值為48,b的值為2,接著m和n的值依次為6和2,新的b值為0,新的m和n的值依次為2和0,結束循環,輸出a/m的值為24。因此程序的功能是求最小公倍數。若輸入m和n的值分別為6和8,第一次循環時,b的值為6,交換m和n,結果不變。D選項交換框內語句順序,會影響程序值的輸出。例3 為了編寫程序計算表達式“2-4+6-8+……-100”的值,小李設計的算法部分流程圖如圖所示。在流程圖中①、②處分別應填入的是 ( )A.①i=i+1 ②k=-k*2B.①i=i+2 ②k=-kC.①k=-k ②i=i+2D.①k=-k*2 ②i=i+2答案 C解析 本題考查循環結構的算法表示。i值遞增2,k值的正負用來控制進行加法或減法運算,因此只能為1或-1。而將B選項的步驟帶入流程圖中會發現,表達式會變成“2-4+6-8+……-100+102”。變式訓練3 某循環結構算法的部分流程圖如圖所示。下列說法正確的是 ( )A.①處只能填“N”,②處只能填“Y”B.必須先執行情況①所指向的任務,才能執行情況②指向的任務C.“任務序列”為空時,此算法可能不符合有窮性的特征D.“任務序列”中允許包含分支結構,但不能再包含循環結構答案 C解析 本題要求理解循環控制結構的工作原理。循環結構的特點主要有:有條件地重復執行,且能根據條件及時結束執行。如題干圖所示,循環進行的條件可以是符合“條件滿足”,也可以是直到“條件滿足”時退出循環,因此,標號①和標號②無法確定“Y”或“N”。循環結構中的循環體要根據具體情況確定是否需要執行,有可能不執行直接退出而執行下一步的操作。流程圖中的“任務序列”如果為空,意味著一旦進入循環體后存在著無法改變循環條件的可能,使得算法出現“死循環”而違背算法有窮性的特征。循環體內可以包含分支結構,也可以包含循環結構。例4 某算法的部分流程圖如圖所示,執行該流程圖后,下列說法正確的是 ( )A.s≤40執行了5次B.語句s←s-n執行了6次C.輸出后s=58D.輸出后n=5答案 C解析 本題考查流程圖。A選項共執行6次;B選項共執行5次;C選項正確;D選項n的值為6。變式訓練4 在某聊天軟件上,用戶賬號密碼驗證的過程如圖所示。當用戶輸入密碼時,若第1次輸入錯誤,第2次輸入才正確,則整個操作過程的執行流程是 ( )A.①→②→③→④→⑤B.①→②→③→④→⑥→⑦C.①→②→③→④→⑥→②→③→④→⑤D.①→②→③→④→⑤→⑦→②→③→④→⑤答案 C解析 循環結構內部嵌套一個選擇結構。第1次密碼輸入錯誤,則執行流程①→②→③→④→⑥,第2次輸入正確,因此又執行流程②→③→④→⑤,故答案為C。例5 某算法的流程圖如下,輸入為3時,執行該流程后,下列說法錯誤的是 ( )A.輸出f的值為6B.“i≤n”執行了4次C.“f←f×i”共執行了3次D.交換“f←f×i”和“i←i+1”的位置不會影響執行結果答案 D解析 本題考查算法的表示。A選項f的值為1*2*3=6。B選項共循環3次,條件判斷4次。D選項交換兩條語句,i的值發生變化。變式訓練5 某算法的流程圖如圖所示,若n、k1、k2的輸入值依次為19、0、0,執行這部分流程,則k1和k2的值分別是 ( )A.2 2 B.2 3 C.3 2 D.3 3答案 B解析 本題考查算法的表示。算法的功能是將十進制數n轉換成二進制數,k1統計0的個數,k2統計1的個數。19D=10011B。例6 某算法的部分流程圖如圖所示,執行這部分流程后,以下說法正確的是 ( )A.變量a,b的值分別為6,6B.變量a,b的值分別為6,0C.步驟b←b-a被執行3次D.步驟b>0被執行5次答案 B解析 本題考查算法的表示。列出表格求值。b>0 a>b a bT T 48 18T T 30 18T F 12 18T T 12 6T F 6 6F 6 0C選項步驟b←b-a被執行2次,D選項步驟b>0被執行6次。變式訓練6 某算法的部分流程圖如圖所示。輸入m,n的值為21,14,執行這部分流程后,輸出m的值為 ( )A.2 B.7 C.14 D.21答案 B解析 本題考查輾轉相除法的流程圖應用。一、基礎鞏固1.某算法如圖所示,對于該算法理解正確的有 ( )A.該算法中包含循環結構和分支結構B.輸入電量a為100時,輸出y的值為53C.輸入電量a為200時,輸出y的值為110.5D.判斷框中代碼“a≥50 ”可能會被判斷兩次答案 C解析 本題主要考查的是流程圖。本題流程圖所使用的是一個多分支結構。輸入電量a為100時,執行代碼“y←0.53*50+(a-50)*0.56”,因此y的值為54.5;判斷框中代碼“a≥50 ”最多會被判斷一次,當a<50或a≥200時,不會被判斷;輸入電量a為200時,執行代碼“y←0.53*50+150*0.56+(a-200)*0.63”,輸出y的值為110.5,因此,答案為C。 2.設計一個程序,根據輸入的勞務報酬收入計算勞務報酬所得稅。解決此問題的流程圖如圖所示。若要測試所有分支程序代碼是否正確,下列測試數據中最恰當的一組是 ( )A.500,830,4200 B.500,800,4000 C.0,800,1000 D.400,900,1200答案 A解析 從圖示來看,該題兩個判斷框均沒有來自出口的流程指向,故為選擇結構,他是一個多分支選擇結構。根據判斷框的條件,有①≤800;②>800且≤4000;③>4000;三種情況,所以測試數據應包括以上三種。3.某流程圖如圖所示,若輸入k的值為9,最終i、s的值分別為 ( )A.11 0 B.11 -11 C.9 0 D.9 -9答案 B解析 本題考查算法的表示。變量i每次增加2,i的值依次為1,3,5,7,9,11,退出循環時為11,共循環了5次,3的倍數之和為(3+9=12),其余之和為(5+7+11=23)。4.某算法的部分流程圖如圖所示,執行這部分流程后,依次輸入9、2、8、18、-1,則輸出值是 ( )A.9 B.18 C.-1 D.2 答案 B解析 本題考查算法的表示。當條件a>b成立時,b更新為a的值,因此程序的功能是求輸入的最大值。5.某算法的部分流程圖如圖所示,執行該流程后,變量sum的值為 ( )A.20 B.25 C.45 D.60答案 A6.某算法的部分流程圖如圖所示,執行這部分流程,若輸入n的值為20,則輸出a,b的值分別是 ( )A.12 10 B.10 9 C.9 15 D.9 10答案 D解析 本題考查流程圖閱讀的相關知識。該流程圖屬于循環結構,該流程圖需記錄每次循環變量的變化或找規律。①T,T,a=3,n=17 ②T,F,b=5,n=12③T,T,a=6,n=9 ④T,F,b=10,n=4⑤T,T,a=9,n=1 ⑥F跳出。7.某算法部分流程圖如圖所示。執行這部分流程,依次輸入12、-5、29、18、7,則輸出值是 ( )A.12 B.-5 C.29 D.7答案 C解析 該算法為循環結構,找輸入數中的最大數。執行過程如表所示。i b i≤4 a a>b 1 b=12 Y a=-5 N2 Y a=29 Y3 b=29 Y a=18 N4 Y a=7 N5 N8.某算法部分流程圖如圖所示。執行這部分流程,依次輸入20、-3、10、8、-11、0,則輸出值是 ( )A.-11 B.-3 C.8 D.20答案 C解析 該流程可得出其功能是:求輸入序列中大于0的最小數,故最后b的值為8,選項C正確。本題也可以通過直接代入的方法求解,一樣可以求得正確答案。9.某算法的部分流程圖如圖所示。執行這部分流程,若輸入a的值為22,則輸出b的值為 ( )A.0 B.1 C.2 D.16答案 C解析 本題考查流程圖相關知識。采用列表跟蹤法。條件a=b a>b a b初值 22 16False False 6 8False True 6 4False True 2 2True從表格中可以獲取的信息有,循環條件被執行了4次,循環體語句執行了3循環結束后,變量a、b的值都是2。熟練以后,表格可以不用畫。10.某算法的流程圖如圖所示。執行這個流程圖時,依次輸入5、4、6、-8、4、0,下列說法正確的是 ( )A.a≠0執行了4次B.s=s*x+a語句執行了5次C.輸出的s值是表達式4*54+6*53-8*52+4*5的值D.輸出的s值是表達式4*53+6*52-8*5+4的值答案 D解析 本題主要考查的是循環結構流程圖。執行過程如表所示。條件a≠0 s a x初值 0 4 5True 4 6 5True 4*5+6 -8 5True (4*5+6)*5-8 4 5True ((4*5+6)*5-8)*5+4 0 5False二、能力提升11.某算法的部分流程如圖所示。進入流程前b的初值為0,流程執行后,依次輸入3,-2,1,4,則輸出的值是 ( ) A.8 B.11 C.19 D.21答案 B解析 本題考查算法流程。條件b≤8 a b a>b b初值 0 0 0True 3 8 False 8True -2 -7 True -2True 1 2 False 2True 4 11 False 11False12.某算法的部分流程圖如圖所示。執行這部分流程,分別輸入35、50、60,則輸出值依次為 ( ) A.10,3 B.10,4C.7,10,4 D.10,12,3答案 B解析 流程圖中有兩個輸出,一個是變量r滿足713.某算法的部分流程圖如圖所示,以下說法正確的是 ( )A.該流程執行后,變量k的值是-1B.該流程執行后,變量a的值是16C.該流程用于計算并輸出1+8-16的值D.該流程完整執行1次,“a<32 ”共執行了3次答案 D解析 從圖中可以看出,a的值依次為8、16、32,k的值依次為1、0、1,s=1*8+(0*16)。當a的值為32時,a<32 不成立,退出循環,因此該條件判斷了3次,循環體執行2次。14.某算法的部分流程圖如圖所示。當輸入n的值為4時,則a,b的值分別為 ( )A.5 5 B.16 16 C.16 32 D.34 55答案 D解析 本題考查算法的表示。本題實現求斐波那契數列第n+1項的功能,共循環了4次。i 0 1 2 3a 2 5 13 34b 3 8 21 55 15.某算法的部分流程圖如圖所示。執行這部分流程,輸出的s和i的值分別是 ( )A.26 9 B.28 11 C.30 9 D.30 11答案 D解析 本題主要考查算法流程圖的閱讀。該流程圖表示的是循環結構算法,執行過程如表所示。s<=15 s t i初始值 0 2 1True 2 0 3True 2 2 5True 12 0 7True 12 2 9True 30 0 11False16.某算法的部分流程圖如圖所示,以下說法正確的是 ( )A.該流程執行后,變量b的值是16B.該流程中包含兩個循環結構C.該流程完整執行1次,“a←a-b”共執行了3次D.該流程用于計算并輸出32和24的最大公約數答案 D解析 該算法是循環結構中包含一個選擇結構,該算法是更相減損法求最大公約數。(共42張PPT)課時2 算法的控制結構第二章 算法與問題解決1.能結合實例,理解算法三種控制結構的概念、特點及適用情境。2.能根據問題求解過程中數據和運算的特點,選擇合適的控制結構正確地設計、描述算法。3.理解各種控制結構在解決問題過程中綜合運用的必要性。目 錄CONTENTS知識梳理01例題精析02鞏固與提升03知識梳理11.順序結構在算法執行流程中,執行完一個處理步驟后,按照次序執行下一個步驟(如圖a)。順序結構的每個步驟按照算法中出現的順序依次執行;__________________________________________ 。2.分支結構也稱為選擇結構。在算法執行流程中,先進行條件判斷,再根據判斷結果分別執行不同處理的控制結構(如圖b)。在一個分支結構中,______________________,其他的分支則被忽略。每個步驟一定會被執行一次,而且只執行一次必定有一個分支被執行3.循環結構算法執行過程中,在條件控制下,某些操作步驟需要重復執行(循環)的控制結構(如圖c)。循環結構的重復執行(循環)是在條件控制下的一種可控的重復,當需要重復處理的條件不滿足(或滿足)時,________________________ 。重復處理必須能及時結束例題精析2例1 某商場促銷打折消費規定如下:消費500元以內的打8.8折;滿500元打8折,滿1000元及以上的打7折。用算法描述這一消費規定,合適的算法控制結構是 ( )A.順序結構 B.分支結構C.循環結構 D.樹形結構B解析 本題要求根據具體任務確定算法的控制結構。算法有順序、分支、循環三種基本結構,分析題目描述的促銷打折規定,結算時將視消費額分成三種情況進行不同的打折計算,這符合分支結構算法的控制轉移思想。變式訓練1 用輾轉相除法求兩個正整數的最大公約數的算法如下:①輸入兩個正整數m和n。②若m③用m除以n,相除得到余數r。④若r等于0,則輸出n的值,算法結束;否則,執行步驟⑤。⑤令m←n,n←r,返回步驟③繼續執行。該算法使用的控制結構是( )A.順序結構 B.分支結構C.循環結構 D.樹形結構解析 本題主要考查的是算法的控制結構。步驟③④⑤構成了一個循環結構,因此答案為C。C例2 角谷猜想描述如下:對于任意一個自然數n,若n為偶數,則將其除以2;若n為奇數,則將其乘以3,然后再加1。按此做法經過有限次的運算后,總可以得到自然數1。驗證角谷猜想的部分流程圖如圖所示,下列說法正確的是 ( )A.該流程圖只包含了分支結構B.將條件“n=1 ”改為“n>0 ”,功能相同C.語句“n←n×3+1”可能不會被執行D.輸入n的值為1時,算法將沒有輸出解析 本題考查算法的表示。A選項算法中循環結構中包含了選擇結構。B選項n>0的最小值為1。C選項當n值為1時不再循環,即最后一次循環之前n的值為2,當n的值為2的t次方時(t=1,2,3…),得到n的值均是偶數,因此“n←n×3+1”可能不會被執行。D選項當n的值為1,輸出驗證成功。C變式訓練2 某算法的部分流程圖如圖所示。若輸入m和n的值分別為8和6,運行該算法后,以下說法正確的是( )A.“n≠0 ”共執行了2次B.若輸入m和n的值分別為6和8,運行結果不變C.該算法的功能為求解m和n的最大公約數D.流程圖標記“①”所在處理框中的語句調換次序不影響該算法的功能解析 本題考查算法的表示。a的值為48,b的值為2,接著m和n的值依次為6和2,新的b值為0,新的m和n的值依次為2和0,結束循環,輸出a/m的值為24。因此程序的功能是求最小公倍數。若輸入m和n的值分別為6和8,第一次循環時,b的值為6,交換m和n,結果不變。D選項交換框內語句順序,會影響程序值的輸出。B例3 為了編寫程序計算表達式“2-4+6-8+……-100”的值,小李設計的算法部分流程圖如圖所示。在流程圖中①、②處分別應填入的是( )A.①i=i+1 ②k=-k*2B.①i=i+2 ②k=-kC.①k=-k②i=i+2D.①k=-k*2②i=i+2解析 本題考查循環結構的算法表示。i值遞增2,k值的正負用來控制進行加法或減法運算,因此只能為1或-1。而將B選項的步驟帶入流程圖中會發現,表達式會變成“2-4+6-8+……-100+102”。C變式訓練3 某循環結構算法的部分流程圖如圖所示。下列說法正確的是 ( )A.①處只能填“N”,②處只能填“Y”B.必須先執行情況①所指向的任務,才能執行情況②指向的任務C.“任務序列”為空時,此算法可能不符合有窮性的特征D.“任務序列”中允許包含分支結構,但不能再包含循環結構解析 本題要求理解循環控制結構的工作原理。循環結構的特點主要有:有條件地重復執行,且能根據條件及時結束執行。如題干圖所示,循環進行的條件可以是符合“條件滿足”,也可以是直到“條件滿足”時退出循環,因此,標號①和標號②無法確定“Y”或“N”。循環結構中的循環體要根據具體情況確定是否需要執行,有可能不執行直接退出而執行下一步的操作。流程圖中的“任務序列”如果為空,意味著一旦進入循環體后存在著無法改變循環條件的可能,使得算法出現“死循環”而違背算法有窮性的特征。循環體內可以包含分支結構,也可以包含循環結構。C例4 某算法的部分流程圖如圖所示,執行該流程圖后,下列說法正確的是 ( )A.s≤40執行了5次B.語句s←s-n執行了6次C.輸出后s=58D.輸出后n=5解析 本題考查流程圖。A選項共執行6次;B選項共執行5次;C選項正確;D選項n的值為6。C變式訓練4 在某聊天軟件上,用戶賬號密碼驗證的過程如圖所示。當用戶輸入密碼時,若第1次輸入錯誤,第2次輸入才正確,則整個操作過程的執行流程是( )A.①→②→③→④→⑤B.①→②→③→④→⑥→⑦C.①→②→③→④→⑥→②→③→④→⑤D.①→②→③→④→⑤→⑦→②→③→④→⑤解析 循環結構內部嵌套一個選擇結構。第1次密碼輸入錯誤,則執行流程①→②→③→④→⑥,第2次輸入正確,因此又執行流程②→③→④→⑤,故答案為C。CA.輸出f的值為6B.“i≤n”執行了4次C.“f←f×i”共執行了3次D.交換“f←f×i”和“i←i+1”的位置不會影響執行結果解析 本題考查算法的表示。A選項f的值為1*2*3=6。B選項共循環3次,條件判斷4次。D選項交換兩條語句,i的值發生變化。D變式訓練5 某算法的流程圖如圖所示,若n、k1、k2的輸入值依次為19、0、0,執行這部分流程,則k1和k2的值分別是 ( )解析 本題考查算法的表示。算法的功能是將十進制數n轉換成二進制數,k1統計0的個數,k2統計1的個數。19D=10011B。BA.2 2 B.2 3 C.3 2 D.3 3例6 某算法的部分流程圖如圖所示,執行這部分流程后,以下說法正確的是 ( )BA.變量a,b的值分別為6,6 B.變量a,b的值分別為6,0C.步驟b←b-a被執行3次 D.步驟b>0被執行5次C選項步驟b←b-a被執行2次,D選項步驟b>0被執行6次。解析 本題考查算法的表示。列出表格求值。b>0 a>b a bT T 48 18T T 30 18T F 12 18T T 12 6T F 6 6F 6 0變式訓練6 某算法的部分流程圖如圖所示。輸入m,n的值為21,14,執行這部分流程后,輸出m的值為 ( )A.2 B.7 C.14 D.21解析 本題考查輾轉相除法的流程圖應用。B3鞏固與提升基礎鞏固能力提升1.某算法如圖所示,對于該算法理解正確的有 ( )A.該算法中包含循環結構和分支結構B.輸入電量a為100時,輸出y的值為53C.輸入電量a為200時,輸出y的值為110.5D.判斷框中代碼“a≥50 ”可能會被判斷兩次C解析 本題主要考查的是流程圖。本題流程圖所使用的是一個多分支結構。輸入電量a為100時,執行代碼“y←0.53*50+(a-50)*0.56”,因此y的值為54.5;判斷框中代碼“a≥50 ”最多會被判斷一次,當a<50或a≥200時,不會被判斷;輸入電量a為200時,執行代碼“y←0.53*50+150*0.56+(a-200)*0.63”,輸出y的值為110.5,因此,答案為C。2.設計一個程序,根據輸入的勞務報酬收入計算勞務報酬所得稅。解決此問題的流程圖如圖所示。若要測試所有分支程序代碼是否正確,下列測試數據中最恰當的一組是( )A.500,830,4200 B.500,800,4000C.0,800,1000 D.400,900,1200A解析 從圖示來看,該題兩個判斷框均沒有來自出口的流程指向,故為選擇結構,他是一個多分支選擇結構。根據判斷框的條件,有①≤800;②>800且≤4000;③>4000;三種情況,所以測試數據應包括以上三種。3.某流程圖如圖所示,若輸入k的值為9,最終i、s的值分別為 ( )B解析 本題考查算法的表示。變量i每次增加2,i的值依次為1,3,5,7,9,11,退出循環時為11,共循環了5次,3的倍數之和為(3+9=12),其余之和為(5+7+11=23)。A.11 0 B.11 -11 C.9 0 D.9 -94.某算法的部分流程圖如圖所示,執行這部分流程后,依次輸入9、2、8、18、-1,則輸出值是 ( )A.9 B.18 C.-1 D.2B解析 本題考查算法的表示。當條件a>b成立時,b更新為a的值,因此程序的功能是求輸入的最大值。5.某算法的部分流程圖如圖所示,執行該流程后,變量sum的值為 ( )AA.20 B.25 C.45 D.606.某算法的部分流程圖如圖所示,執行這部分流程,若輸入n的值為20,則輸出a,b的值分別是 ( )D解析 本題考查流程圖閱讀的相關知識。該流程圖屬于循環結構,該流程圖需記錄每次循環變量的變化或找規律。①T,T,a=3,n=17 ②T,F,b=5,n=12③T,T,a=6,n=9④T,F,b=10,n=4⑤T,T,a=9,n=1⑥F跳出。A.12 10 B.10 9C.9 15 D.9 107.某算法部分流程圖如圖所示。C執行這部分流程,依次輸入12、-5、29、18、7,則輸出值是 ( )A.12 B.-5 C.29 D.7解析 該算法為循環結構,找輸入數中的最大數。執行過程如表所示。i b i≤4 a a>b 1 b=12 Y a=-5 N2 Y a=29 Y3 b=29 Y a=18 N4 Y a=7 N5 N 8.某算法部分流程圖如圖所示。執行這部分流程,依次輸入20、-3、10、8、-11、0,則輸出值是 ( )C解析 該流程可得出其功能是:求輸入序列中大于0的最小數,故最后b的值為8,選項C正確。本題也可以通過直接代入的方法求解,一樣可以求得正確答案。A.-11 B.-3 C.8 D.209.某算法的部分流程圖如圖所示。執行這部分流程,若輸入a的值為22,則輸出b的值為 ( )CA.0 B.1 C.2 D.16解析 本題考查流程圖相關知識。采用列表跟蹤法。條件a=b a>b a b初值 22 16False False 6 8False True 6 4False True 2 2True 從表格中可以獲取的信息有,循環條件被執行了4次,循環體語句執行了3循環結束后,變量a、b的值都是2。熟練以后,表格可以不用畫。10.某算法的流程圖如圖所示。執行這個流程圖時,依次輸入5、4、6、-8、4、0,下列說法正確的是 ( )DA.a≠0執行了4次B.s=s*x+a語句執行了5次C.輸出的s值是表達式4*54+6*53-8*52+4*5的值D.輸出的s值是表達式4*53+6*52-8*5+4的值解析 本題主要考查的是循環結構流程圖。執行過程如表所示。條件a≠0 s a x初值 0 4 5True 4 6 5True 4*5+6 -8 5True (4*5+6)*5-8 4 5True ((4*5+6)*5-8)*5+4 0 5False 11.某算法的部分流程如圖所示。進入流程前b的初值為0,流程執行后,依次輸入3,-2,1,4,則輸出的值是 ( )BA.8 B.11 C.19 D.21解析 本題考查算法流程。條件b≤8 a b a>b b初值 0 0 0True 3 8 False 8True -2 -7 True -2True 1 2 False 2True 4 11 False 11False 12.某算法的部分流程圖如圖所示。執行這部分流程,分別輸入35、50、60,則輸出值依次為 ( )BA.10,3 B.10,4C.7,10,4 D.10,12,3解析 流程圖中有兩個輸出,一個是變量r滿足7D13.某算法的部分流程圖如圖所示,以下說法正確的是 ( )解析 從圖中可以看出,a的值依次為8、16、32,k的值依次為1、0、1,s=1*8+(0*16)。當a的值為32時,a<32 不成立,退出循環,因此該條件判斷了3次,循環體執行2次。A.該流程執行后,變量k的值是-1B.該流程執行后,變量a的值是16C.該流程用于計算并輸出1+8-16的值D.該流程完整執行1次,“a<32 ”共執行了3次14.某算法的部分流程圖如圖所示。D解析 本題考查算法的表示。本題實現求斐波那契數列第n+1項的功能,共循環了4次。當輸入n的值為4時,則a,b的值分別為 ( )A.5 5 B.16 16 C.16 32 D.34 55i 0 1 2 3a 2 5 13 34b 3 8 21 55D15.某算法的部分流程圖如圖所示。執行這部分流程,輸出的s和i的值分別是 ( )DA.26 9 B.28 11C.30 9 D.30 11解析 本題主要考查算法流程圖的閱讀。該流程圖表示的是循環結構算法,執行過程如表所示。s<=15 s t i初始值 0 2 1True 2 0 3True 2 2 5True 12 0 7True 12 2 9True 30 0 11False 16.某算法的部分流程圖如圖所示,以下說法正確的是 ( )D解析 該算法是循環結構中包含一個選擇結構,該算法是更相減損法求最大公約數。A.該流程執行后,變量b的值是16B.該流程中包含兩個循環結構C.該流程完整執行1次,“a←a-b”共執行了3次D.該流程用于計算并輸出32和24的最大公約數課時2 算法的控制結構課時目標1.能結合實例,理解算法三種控制結構的概念、特點及適用情境。2.能根據問題求解過程中數據和運算的特點,選擇合適的控制結構正確地設計、描述算法。3.理解各種控制結構在解決問題過程中綜合運用的必要性。1.順序結構在算法執行流程中,執行完一個處理步驟后,按照次序執行下一個步驟(如圖a)。順序結構的每個步驟按照算法中出現的順序依次執行;______________________,________________。2.分支結構也稱為選擇結構。在算法執行流程中,先進行條件判斷,再根據判斷結果分別執行不同處理的控制結構(如圖b)。在一個分支結構中,________________________,其他的分支則被忽略。3.循環結構算法執行過程中,在條件控制下,某些操作步驟需要重復執行(循環)的控制結構(如圖c)。循環結構的重復執行(循環)是在條件控制下的一種可控的重復,當需要重復處理的條件不滿足(或滿足)時,________________________。例1 某商場促銷打折消費規定如下:消費500元以內的打8.8折;滿500元打8折,滿1000元及以上的打7折。用算法描述這一消費規定,合適的算法控制結構是( )A.順序結構 B.分支結構C.循環結構 D.樹形結構聽課筆記: 變式訓練1 用輾轉相除法求兩個正整數的最大公約數的算法如下:①輸入兩個正整數m和n。②若m③用m除以n,相除得到余數r。④若r等于0,則輸出n的值,算法結束;否則,執行步驟⑤。⑤令m←n,n←r,返回步驟③繼續執行。該算法使用的控制結構是( )A.順序結構 B.分支結構 C.循環結構 D.樹形結構例2 角谷猜想描述如下:對于任意一個自然數n,若n為偶數,則將其除以2;若n為奇數,則將其乘以3,然后再加1。按此做法經過有限次的運算后,總可以得到自然數1。驗證角谷猜想的部分流程圖如圖所示,下列說法正確的是( )A.該流程圖只包含了分支結構B.將條件“n=1?”改為“n>0?”,功能相同C.語句“n←n×3+1”可能不會被執行D.輸入n的值為1時,算法將沒有輸出聽課筆記: 變式訓練2 某算法的部分流程圖如圖所示。若輸入m和n的值分別為8和6,運行該算法后,以下說法正確的是( )A.“n≠0?”共執行了2次B.若輸入m和n的值分別為6和8,運行結果不變C.該算法的功能為求解m和n的最大公約數D.流程圖標記“①”所在處理框中的語句調換次序不影響該算法的功能例3 為了編寫程序計算表達式“2-4+6-8+……-100”的值,小李設計的算法部分流程圖如圖所示。在流程圖中①、②處分別應填入的是( )A.①i=i+1 ②k=-k*2B.①i=i+2 ②k=-kC.①k=-k ②i=i+2D.①k=-k*2 ②i=i+2聽課筆記: 變式訓練3 某循環結構算法的部分流程圖如圖所示。下列說法正確的是( )A.①處只能填“N”,②處只能填“Y”B.必須先執行情況①所指向的任務,才能執行情況②指向的任務C.“任務序列”為空時,此算法可能不符合有窮性的特征D.“任務序列”中允許包含分支結構,但不能再包含循環結構例4 某算法的部分流程圖如圖所示,執行該流程圖后,下列說法正確的是( )A.s≤40執行了5次 B.語句s←s-n執行了6次C.輸出后s=58 D.輸出后n=5聽課筆記: 變式訓練4 在某聊天軟件上,用戶賬號密碼驗證的過程如圖所示。當用戶輸入密碼時,若第1次輸入錯誤,第2次輸入才正確,則整個操作過程的執行流程是( )A.①→②→③→④→⑤B.①→②→③→④→⑥→⑦C.①→②→③→④→⑥→②→③→④→⑤D.①→②→③→④→⑤→⑦→②→③→④→⑤例5 某算法的流程圖如下,輸入為3時,執行該流程后,下列說法錯誤的是( )A.輸出f的值為6B.“i≤n”執行了4次C.“f←f×i”共執行了3次D.交換“f←f×i”和“i←i+1”的位置不會影響執行結果聽課筆記: 變式訓練5 某算法的流程圖如圖所示,若n、k1、k2的輸入值依次為19、0、0,執行這部分流程,則k1和k2的值分別是( )A.2 2 B.2 3C.3 2 D.3 3例6 某算法的部分流程圖如圖所示,執行這部分流程后,以下說法正確的是( )A.變量a,b的值分別為6,6B.變量a,b的值分別為6,0C.步驟b←b-a被執行3次D.步驟b>0被執行5次聽課筆記: 變式訓練6 某算法的部分流程圖如圖所示。輸入m,n的值為21,14,執行這部分流程后,輸出m的值為( )A.2 B.7C.14 D.21 展開更多...... 收起↑ 資源列表 課時2 算法的控制結構 學案 浙教版(2019)必修1.doc 課時2 算法的控制結構 教案 浙教版(2019)必修1.doc 課時2 算法的控制結構 課件(共42張ppt)浙教版(2019)必修1.pptx 縮略圖、資源來源于二一教育資源庫