資源簡介 專題3 算法的表示之流程圖學 業 要 求 知 識 點 學業水平等級1.能從生活和學習中發現實際問題中的算法,并結合實際問題理解算法的內涵和外延 22.初步掌握從真實項目的情境中界定關鍵問題的方法,能根據項目實際界定問題并建立求解模型 13.能根據問題求解模型設計算法,選擇合適的方式正確地描述算法。 2知識點 用流程圖表示算法【知識梳理】1.算法指解決問題或完成任務的一系列________和步驟。計算機算法就是為了解決問題而需要讓計算機有序執行的、無歧義的、有限步驟的集合。2.算法的特征:________性(處理步驟有限的)、________性(操作是可行的)和確定性(每一步描述明確的)。3.一個算法可以有0個或多個輸入,但必須________有1個輸出。4.描述算法的方法:自然語言、________、偽代碼、程序設計語言。5.算法的三種控制結構:順序結構、分支結構、________結構。6.編程解決問題的一般過程:1-抽象與________;2-設計算法;3-編寫程序;4-________程序。【經典案例】流程圖表示算法能直觀反映內部控制的特征,結構清晰簡潔,容易理解。流程框圖有輸入輸出框、處理框和判斷框三種,輸入輸出框表示數據的輸入和輸出,處理框表示對數據進行運算,判斷框表示條件是否成立,是流程圖的核心,有兩個出口,表示條件是否成立的結果,數據有兩種流向。選擇結構的兩個出口將匯集在一起,若判斷框的入口有兩個,是循環結構的特征。【例1】 某算法的部分流程圖如圖所示,執行這部分流程,若輸入y的值為28,則輸出s,n的值分別是( )A.4 26 B.8 32C.9 29 D.10 29思維點撥明考向 本題考查用流程圖表示算法精點撥 n=20時,滿足條件n%7==6,因此s=6,當n=23時,不滿足條件,即s=6-2==4,當n=26時,滿足條件n%7==5,因此s=4+5=9,n=29時結束循環,輸出s和n的值聽課筆記:__________________________________________________________________________________________________________________________________【變式1】 某算法的部分流程圖如圖所示,執行這部分流程,依次輸入4、5、-2、11、-9、8、3、-15、8、9、-2、0,則輸出ans的值是( )A.9 B.11C.17 D.24【例2】 將一個字符翻轉過來和原來的字符串是相同的,該字符串稱為回文字符串,如″A″、″AA″、″ABA″等。判斷一個非空字符串s是否是回文的算法如下:則判斷框中條件①和②分別是( )A.①s[i]=s[len(s)-i]? ②i=n B.①s[i]=s[len(s)-i] ②i=n+1 C.①s[i]=s[len(s)-i-1] ②i=n D.①s[i]=s[len(s)-i-1] ②i=n+1 思維點撥明考向 本題考查算法表示和字符串處理精點撥 回文字符串只要判斷到一半的位置len(s)//2,由于i的索引位置從0開始,因此判斷的結束索引為len(s)//2-1。索引位置0的對稱位置為len(s)-1,位置1的對稱位置為len(s)-2,可以得到索引位置i的對稱位置為len(s)-i-1聽課筆記:____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________【變式2】 為了編寫程序計算表達式“2-4+6-8+…-100”的值,小李設計的算法部分流程圖如圖所示。在流程圖中①、②處分別應填入的是( )A.①i=i+1 ②k=-k*2 B.①i=i+2 ②k=-kC.①k=-k ②i=i+2 D.①k=-k*2 ②i=i+21.用Python語言實現的某算法的部分流程圖如圖所示,若輸入n的值為127,則輸出sum的值為( )A.5 B.6C.7 D.82.某算法的部分流程圖如圖所示,執行這部分流程,若輸入n的值為“32”(不包含引號),則輸出的結果是( )A.15 B.54C.55 D.5833.某算法的部分流程圖如圖所示。執行這部分流程,輸出s和i的值分別是( )A.30 11 B.30 9C.28 11 D.26 94.某算法的部分流程圖如圖所示,執行這部分流程,依次輸入9、4、1、-3,則輸出s的值是( )A.-3 B.0C.6 D.35.某算法的部分流程圖如圖所示,已知a=[1,0,2,-1,3],執行這部分程序,則輸出的s值為( )A.27 B.108C.147 D.4366.某算法的流程圖如圖所示,執行這部分流程,若輸入cur的值依次8,7,1,3,2,-1,則輸出k的值是( )A.1 B.2C.3 D.47.某算法的部分流程圖如圖所示,執行這部分流程,若入輸x的值為29,依次輸入a的值為2,3,4,0,則輸出c的值是( )A.1 B.2C.3 D.48.某算法的部分流程圖如圖所示,執行這部分流程,若輸入x的值為60,則輸出m的值是( )A.2 B.3C.4 D.59.某算法的部分流程圖如圖所示,執行這部分流程,輸出sum的值為( )A.5 B.7C.8 D.910.某算法的部分流程圖如圖所示執行流程圖后,變量sum及i的值分別是( )A.14 5 B.17 4C.31 4 D.14 411.執行如圖所示的流程圖,若輸入的x、y、p的值分別為:60、20、5,則輸出的結果是( )A.2 B.3C.4 D.512.某算法的部分流程圖如下圖所示。執行這部分流程,則輸出x的值為( )A.16 B.32C.64 D.12813.解決某問題的算法流程圖如圖a所示,程序代碼如圖b所示,兩者均不完整。s1=input() s2=input() num=0;i=0 while i<=10: a=int(s1[i%len(s1)]) b=int(s2[i%len(s2)]) if________: num+=1 i+=1 print(num)圖b若輸入s1和s2的值分別為“012”,“121210”,結合流程圖和程序代碼,則輸出的num的值為( )A.3 B.5C.7 D.1114.某算法流程圖如圖所示,其對應的Python程序是( )A.s=0for i in range(1,101):if i%5==0:s=s+ielse:i=i+2print(s)B.s=0;i=1while i<=100: if i%5==0:s=s+i else:i=i+2print(s)C.s=0for i in range(1,101):if i%5==0:s=s+ii=i+2print(s)D.s=0;i=1while i<=100:if i%5==0:s=s+ii=i+2print(s)15.已知流程圖a和圖b的算法功能相同,則圖b中①②③處應填入的內容是(x,y為不同的值)( )A.①m←y-x ②xB.①m←x-y ②x>y ③m←y-xC.①m←y-x ②x>y ③m←y-xD.①m←x-y ②x專題3 算法的表示之流程圖知識點知識梳理1.方法 2.有窮 可行 3.至少 4.流程圖 5.循環 6.建模 調試經典案例例1 C變式1 B [本題考查算法的表示。s是一段數據的累加和,ans是累加和中的最大值。如果s>ans那么更新ans=s,否則s<=ans,那么s歸零,ans的值應該是11。]例2 C變式2 B [本題考查用流程圖表示算法。sum和i的初值均為0,表示第1項沒有產生,因此先要進行i=i+2運算,使得i的值為2,進行累加后,得到第1項的和。接著k=-k,k的值為-1和1之間變換,依次進行相乘后累加。]當堂過關檢測1.C 2.C 3.A 4.C 5.B 6.C 7.B 8.C 9.D 10.A 11.C 12.C 13.B 14.D 15.D 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫