資源簡介 浙江省高中信息技術(shù)——算法與算法表示一、選擇題1.某算法的部分流程圖如圖所示。執(zhí)行這部分流程,分別輸入35、50、60,則輸出值依次為( )A.10,3 B.10, 4 C.7, 10, 4 D.10, 12,32.某算法的部分流程圖如圖所示,執(zhí)行完這部分流程后,變量i,s的值分別是( ) A.3,9 B.4,18 C.5,18 D.6,433.某算法的部分流程圖如圖所示,執(zhí)行這部分流程后,變量s的值是( )A.0 B.3 C.4 D.54.(2016高三上·義烏期中)某算法的部分流程圖如圖所示,執(zhí)行這部分流程后,變量x和Flag的值分別是( )A.2,True B.3,True C.2,F(xiàn)alse D.3,F(xiàn)alse5.某算法的部分流程圖如圖所示,以下說法正確的是( )A.該流程執(zhí)行后,變量k的值是-1B.該流程執(zhí)行后,變量a的值是16C.該流程用于計(jì)算并輸出1+8-16的值D.“a<32 ”共執(zhí)行了3次6.某算法的流程圖如圖所示。執(zhí)行這部分流程后,輸出變量i的值是( )A.7 B.9 C.11 D.137.某算法的部分流程圖如圖所示,執(zhí)行這部分流程“s≤100 ”被執(zhí)行的次數(shù)是( )A.2 B.3 C.4 D.58.(2016·溫州模擬)某算法流程圖如圖所示,執(zhí)行該算法,輸出s的結(jié)果是( ) A.0 B.8 C.10 D.159.某算法的流程圖表示如下,以下說法中不正確的是( )A.的最終結(jié)果是945 B.循環(huán)共進(jìn)行了5次C.程序結(jié)束后,i的值是9 D.該流程圖是一個(gè)循環(huán)結(jié)構(gòu)10.某算法的部分流程圖如圖所示,執(zhí)行這部分流程后,變量a、b的值分別是( )A.3,4 B.3,5 C.8,13 D.8,1511.某算法的流程圖如圖所示,執(zhí)行該流程后,變量x,y的值分別是( )A.3,3 B.7,5 C.10,8 D.20,1812.某算法的部分流程圖如圖所示,執(zhí)行這部分流程后,變量x的值是( )A.0 B.1 C.2 D.813.某算法的部分流程圖如圖所示,執(zhí)行這部分流程,依次輸入5,6,7,則輸出s時(shí),s和a的值分別是( )A.-1,1 B.1,1 C.5,-1 D.6,-114.某算法的流程圖如圖所示,執(zhí)行該算法,當(dāng)x的值為4時(shí),輸出y的值為( )A.9 B.10 C.1 D.1215.某算法部分流程圖如圖所示,執(zhí)行這部分流程,次輸入12、-5、29、18、7,則輸出的值是( )A.12 B.-5 C.29 D.716.某算法的部分流程圖如圖a所示。參照這部分流程圖圖b程序代碼中①處正確的程序段是( )A.For i= 3 To 100 Step 2 s=s+1 Next iB.For i= 1 To 101 Step 2 s=s+1 Next iC.Do While i <= 100 s=s+i i=i+2 LoopD.Do While i <= 100 i=i+2 s=s+i Loop17.某公用電話系統(tǒng)以秒為單位顯示通話時(shí)間,通話費(fèi)以分鐘為單位進(jìn)行計(jì)費(fèi)將通話時(shí)間的秒數(shù)值s,轉(zhuǎn)換為m分(不滿60秒的當(dāng)作1分鐘來計(jì)費(fèi))的算法部分流程圖如圖所示。則流程圖中①②處應(yīng)該填入的是( )A.①s←s-60 ②s<60? B.①s←s+60 ②s<60?C.①s←s-60 ②s<>0? D.①s←s+60 ②s<>0?18.(2018·溫州模擬)某流程圖如圖所示。執(zhí)行該算法,下面說法錯(cuò)誤的是( )A.s 的值最終為-5B.語句“k=k+1”共執(zhí)行了 4 次C.語句“s≤0”共判斷了 5 次D.該算法轉(zhuǎn)成 VB 代碼時(shí)能用 Do 循環(huán)語句實(shí)現(xiàn)19.某算法的部分流程圖如圖所示,執(zhí)行這部分流程后,下列說法正確的是( )A.變量i的值為4B.變量f的值為TrueC.語句“i mod 3=0?”執(zhí)行的次數(shù)為2次D.語句“i←i+1”和“f←Not f”執(zhí)行的次數(shù)為3次答案解析部分1.【答案】B【知識點(diǎn)】算法的常用表示方法;算法的控制結(jié)構(gòu)【解析】【解答】由流程圖可知:i=1,m=5,i值小于3執(zhí)行循環(huán),第一次循環(huán):g=35,r=g/m=35/5=7,r不在r大于7和小于等于10之間,將i值增1后判斷i值,i=2,小于3,執(zhí)行第二次循環(huán):g=50,r=g/m=50/5=10,r在r大于7和小于等于10之間,故將r的值10輸出,然后將i值增1后進(jìn)行判斷,r=3故符合循環(huán)條件r小于等于3的循環(huán)條件,繼續(xù)循環(huán),第三次循環(huán):g=60,r=g/m=60/5=12,r不在r大于7和小于等于10之間,不進(jìn)行輸出,將i增1后進(jìn)行判斷,此時(shí)i=4超過了終值3,故循環(huán),輸出i值4,由上分析知,該程序共輸出一個(gè)r值10和一個(gè)i值4。故答案選B。【分析】本題考查的是使用流程圖表示算法。在使用流程圖表示算法中,要注意流程圖中各框圖的含義及流程線的走向。尤其是使用判斷框和流程線組成的循環(huán)結(jié)構(gòu)。2.【答案】B【知識點(diǎn)】常量、變量及變量的賦值;流程圖識讀【解析】【解答】根據(jù)流程圖可知,第一次循環(huán)后,s=3,i=2,第二次循環(huán)后,s=9,i=3,第三次循環(huán)后,s=18,i=4,此時(shí)退出循環(huán)。最終s的值為18,i的值為4。故答案為B。【分析】本題考查的流程圖的識讀。本題的循環(huán)變量不是計(jì)算器變量,而是累加器變量,所以本題不能使用定義循環(huán)只能使用條件循環(huán)。本題的計(jì)算器為i,形式為:i=i+1,累加器變量為s:s=s+3*i,即每次將i值的3倍累加到變量s中當(dāng)s值超過15時(shí)終止循環(huán)。3.【答案】A【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】根據(jù)流程圖可知,第一次循環(huán)后,k=2,s=10,第二次循環(huán)后,k=3,s=3,第三次循環(huán)后,k=4,s=0,此時(shí)退出循環(huán)。最終s的值為0。故答案選A。【分析】本題考查的是使用循環(huán)變量來控制循環(huán)的算法流程圖。在本題中,循環(huán)變量為k,k的初值為1,終值為3,步長值為1,當(dāng)k值小于等于3時(shí)執(zhí)行循環(huán),每次循環(huán)計(jì)算s除以k的值并賦給s,最后要求計(jì)算出s值,由于使用計(jì)數(shù)器k來控制循環(huán)所以可以使用定次循環(huán)(for循環(huán)),也可以使用條件循環(huán)(while循環(huán)或dowhile循環(huán))。4.【答案】C【知識點(diǎn)】算法的常用表示方法;算法的控制結(jié)構(gòu)【解析】【解答】由流程圖可知,這是一個(gè)循環(huán)結(jié)構(gòu)。先將x的值賦為1,將flag的值賦為true,然后判斷x是否能被2整除,如不能被2整除則將x的值增1,將flag的值取反繼續(xù)進(jìn)行判斷直到x的值能整除2為止。根據(jù)題意,當(dāng)x=1,F(xiàn)lag=True 時(shí),x mod 2=1>0,循環(huán)繼續(xù),x=x+1=2,F(xiàn)lag=False,此時(shí),x mod 2=0,循環(huán)結(jié)束。因此最終,x=2,F(xiàn)lag=False 由流程圖分析可知本程序只循環(huán)了一次,故x的值為2,flag的值為False。故答案選C。【分析】本題考查的是用流程圖表示算法并分析算法。若想讀懂流程圖,一是能明白流程圖中各框圖的含義,二是要看清流程線的走向。5.【答案】D【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】根據(jù)流程圖可知,第一次循環(huán)后,s=1+1×8=9,k=1-1=0,a=2×8=16;第二次循環(huán)后,s=1+1×8+0×16=9,k=1-0=1,a=2×16=32,此時(shí)“a<32不成立,退出循環(huán)。由此可知,最終k=1,a=32,該流程不是用于計(jì)算1+8-16的值,“a<32?”共執(zhí)行了3次。故答案選D。【分析】本題考查的是使用流程圖來表示算法。在分析流程圖時(shí)一定要注意流程線的流向,尤其是向回的箭頭可以構(gòu)成循環(huán)結(jié)構(gòu)。6.【答案】B【知識點(diǎn)】算法的常用表示方法【解析】【解答】 本題考查算法和流程圖,涉及循環(huán)結(jié)構(gòu)。一般采用變量跟蹤法進(jìn)行分析:i i←i+2 s s←s*i 循環(huán)條件s<=5 0001 1 成立3 3 成立5 15 成立7 105 成立9 945 成立11 10395 不成立,退出循環(huán)當(dāng)退出循環(huán)時(shí),變量i的值為11,再執(zhí)行i=i-2,則輸出變量i的值為9。故答案選B。【分析】本題考查的是使用流程圖描述算法。要想明白流程圖描述的算法必須明白流程圖各圖形的含義。7.【答案】C【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】本題的流程圖是一個(gè)典型的循環(huán)結(jié)構(gòu)“s≤100”一共被執(zhí)行四次,前三次是“Y”,最后一次是“N”。故答案選C。【分析】本題考查的是流程圖、等差數(shù)列語句以及累乘器的使用,在循環(huán)中可以使用變量進(jìn)行累加的特點(diǎn)形成一個(gè)等差數(shù)列,如本題,等差數(shù)的初始值為1,公差為2,使用a=a+2,形成一個(gè)1、3、5、7、……的等差數(shù)列,然后再使用累乘器s=s*a將等差數(shù)列中各數(shù)的乘積存儲到變量s中,在s值達(dá)到某個(gè)閥值,本題為100時(shí)終止循環(huán),故本題只能使用條件循環(huán)而不能使用定次循環(huán)。8.【答案】D【知識點(diǎn)】算法的常用表示方法;算法的控制結(jié)構(gòu)【解析】【解答】分析算法流程圖運(yùn)行過程:初始值:s=0,i=1。i=1,i<=20成立,執(zhí)行s=s+i=0+1=1;i Mod 9=5不成立,i=i+1=2。i=2,i<=20成立,執(zhí)行s=s+i=1+2=3;i Mod 9=5不成立,i=i+1=3。i=3,i<=20成立,執(zhí)行s=s+i=3+3=6;i Mod 9=5不成立,i=i+1=4。i=4,i<=20成立,執(zhí)行s=s+i=6+4=10;i Mod 9=5不成立,i=i+1=5。 i=5,i<=20成立,執(zhí)行s=s+i=10+5=15;i Mod 9=5成立,輸出s的值為15。故答案選D。 【分析】本題考查循環(huán)語句的運(yùn)行過程,要求考生能讀懂程序代碼,了解各個(gè)變量在程序執(zhí)行過程中的變化。9.【答案】C【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】本題循環(huán)進(jìn)行了5次,循環(huán)結(jié)束后,i=11,s=945。故答案選C。【分析】本題考查的是使用流程圖來表示算法。由流程圖知,先將變量s、變量i的值均賦為1,然后判斷i值是否超過10,如果沒有超過則將i值累乘到變量s中,再將i值增加2后賦給變量i,然后再次去判斷i值,如i值沒有超過10則繼續(xù)執(zhí)行循環(huán)體,直到i值超過10時(shí)輸出s值,故本題為一個(gè)定次循環(huán),i的初值為1,終值為10,步長為2,i值為1、3、5、7、9、11,但i值為11時(shí)沒有執(zhí)循環(huán)循環(huán)體,故循環(huán)了5次,s=1*3*5*7*9=945。10.【答案】C【知識點(diǎn)】算法的控制結(jié)構(gòu);運(yùn)算符、基本運(yùn)算與表達(dá)式【解析】【解答】分析本題流程圖執(zhí)行過程:初始值:a=1,b=2;b=2,b<8,第一次循環(huán),執(zhí)行語句a=a+b,a=3,b=a+b,b=5;b=5,b<8,第二次循環(huán),執(zhí)行語句a=a+b,a=8,b=a+b,b=13;b=13,b<8不成立,循環(huán)結(jié)束,此時(shí)a=8,b=13。故答案選C。【分析】本題考查循環(huán)結(jié)構(gòu)流程圖執(zhí)行過程及VB表達(dá)式的計(jì)算。11.【答案】C【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】本循環(huán)進(jìn)行了2次,第一次循環(huán)后,y=3,x=5;第二次循環(huán)后,y=8,x=10。故答案選C。【分析】本題考查的是使用流程圖來表示算法。使用圖形表示算法的思路是一種極好的方法,因?yàn)榍а匀f語不如一張圖。在分析流程圖時(shí)要注意流程線的箭頭指向,尤其是向上的箭頭與判斷框一起會形成循環(huán)結(jié)構(gòu)。12.【答案】A【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】根據(jù)流程圖可知,第一次循環(huán)后,n=1,x=50,第二次循環(huán)后,n=2,x=25,第三次循環(huán)后,n=3,x=8,第四次循環(huán)后,n=4,x=2。第五次循環(huán)后,n=5,x=0。此時(shí)退出循環(huán)。故答案選A。【分析】本題考查的是使用流程圖表示算法。從流程圖上來看,本題使用循環(huán)變量n來控制循環(huán),可以使用定次循環(huán),n的初值為0,終值為4,步長為1,故循環(huán)次數(shù)為5次,在循環(huán)體中獎(jiǎng)x除以n后將得到整數(shù)商重新賦給x值,最后輸出x值。13.【答案】A【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】本題屬于循環(huán)結(jié)構(gòu)。根據(jù)流程圖可知,第一次循環(huán)后,s=5,a=1;第二次循環(huán)后,s=1,a=1,此時(shí)退出循環(huán)。故答案選A。【分析】本題考查的是使用流程圖表示算法。由流程圖可知,在一次循環(huán)后,a的值由正1變?yōu)樨?fù)1,再次循環(huán)后,由負(fù)1變?yōu)檎?,故a可以看作一個(gè)符號變量,符號變量在程序設(shè)計(jì)中應(yīng)用時(shí)分廣泛,可以使用符號變量來控制運(yùn)算方向,即由加運(yùn)算變?yōu)闇p運(yùn)算,由乘運(yùn)算變?yōu)槌\(yùn)算。14.【答案】A【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】當(dāng)x=4時(shí),y=2×4+1=9。故答案選A。【分析】本題考查的是使用流程圖來表示含選擇結(jié)構(gòu)的算法,由流程圖可知,本題為一個(gè)雙分支選擇結(jié)構(gòu),即根據(jù)x值為判斷y值,當(dāng)x<=0時(shí),y=3*x-2,當(dāng)x>0時(shí),y=2*x+1,對于這種較簡單的順序、選擇結(jié)構(gòu)可以直接計(jì)算出結(jié)果,從而選出正確答案。15.【答案】C【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】該流程圖是一個(gè)循環(huán)結(jié)構(gòu),變量b的初值為12,i的初值為1,步長為1根據(jù)題意,第一次循環(huán),a=-5,a>b不成立,i=2;第二次循環(huán),a=29,a>b成立,因此b的值被更新為29,i=3;第三次循環(huán),a=18,a>b不成立,i=4;第四次循環(huán),a=7,a>b不成立,i=5,此時(shí)i≤4不成立,退出循環(huán),輸出b的值為29。故答案選C。【分析】本題考查的是使用流程圖來表示算法。由流程圖可知本題為一個(gè)循環(huán)結(jié)構(gòu)中間嵌套一個(gè)選擇結(jié)構(gòu),對于這種較復(fù)雜的結(jié)構(gòu)只能一個(gè)循環(huán)一個(gè)循環(huán)的來分析變量的值最后計(jì)算出結(jié)果。16.【答案】D【知識點(diǎn)】算法的常用表示方法;算法的控制結(jié)構(gòu);常量、變量及變量的賦值【解析】【解答】圖a是計(jì)算1+3+…+101值的流程圖,A計(jì)算了1+3+…+99的值,B計(jì)算了1+3+…+101的值,C計(jì)算了1+1+3+…+99值。故答案選D。【分析】本題考查的是根據(jù)流程圖來補(bǔ)充完程序代碼。由流程圖可知本題使用循環(huán)變量來控制循環(huán),即為一個(gè)定次循環(huán),循環(huán)變量i的初值為1,終值為100,步長為2,即i=1、3、5、、……、99、101,在i值為101時(shí)終止循環(huán),故s=1+3+……+99,當(dāng)然定次循環(huán)可以使用for循環(huán),也可以使用do while循環(huán),兩者的區(qū)別是for循環(huán)的步長值改變在循環(huán)語句中,而do while循環(huán)的步長值改變在循環(huán)體中。17.【答案】C【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】①處為循環(huán)結(jié)構(gòu),每執(zhí)行一次循環(huán),表示分的m會增加1,因此表示秒的s要減少60(60秒轉(zhuǎn)換為1分),故①處答案為s←s—60;當(dāng)s值達(dá)不到60時(shí)(即不滿1分鐘時(shí)),需判斷s值是不是0,0秒時(shí)m無需變化,若剩余時(shí)間不足1分(即00?。故答案選C。【分析】本題考查的是使用流程圖來表示算法以及對算法的分析。由本題的流程圖知該算法是將秒轉(zhuǎn)為分鐘的程序,一般由秒轉(zhuǎn)為分直接將秒除以60即可,而本程序使用的是循環(huán)程序,每循環(huán)一次秒數(shù)減少60,分鐘增加1,故本題使用計(jì)數(shù)器來計(jì)算分鐘:m=m+1。18.【答案】A【知識點(diǎn)】算法的控制結(jié)構(gòu)【解析】【解答】由本題流程圖可知:將10賦給s,0賦給k,當(dāng)s的值大于0時(shí)執(zhí)行循環(huán)體,s的值小于等于0時(shí)輸出k,在循環(huán)體中將k的值增1,然后s減去k的值后再賦給s,最后將s的值輸出。所以s的數(shù)學(xué)意義就是s=10-1-2-3-4=0。選項(xiàng)A:最終s的值為0,故本項(xiàng)錯(cuò)。由上述分析k的值為1、2、3、4共四次循環(huán)k=k+1執(zhí)行了4次,本項(xiàng)對。選項(xiàng)C:執(zhí)行了4次循環(huán),在進(jìn)行第5次判斷后循環(huán)終止條件成立退出了循環(huán),本項(xiàng)對。選項(xiàng)D:該算法要使用循環(huán)語句,可以使用do while ……loop語句實(shí)現(xiàn),本項(xiàng)對。故答案選A。【分析】本題考查的是流程圖,在編程之間應(yīng)當(dāng)使用流程圖將算法表示出來。在使用流程圖時(shí)注意流程圖的圖形含義。其中圓角矩形表示起止框、菱形表示判斷框、矩形表示處理框、箭頭表示流程線。19.【答案】B【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】循環(huán)過程中各變量的取值如下表所示:次數(shù) 1 2 3i的取值 1 2 3條件i mod 3 = 0?是否成立 N N Yi←i+1執(zhí)行后i的值 2 3 f←Not f執(zhí)行后f的值 False True 故答案選B。【分析】本題考查的是使用流程圖來表示算法。由流程圖來看盡管本題使用循環(huán)變量來控制循環(huán)但本題采用的是條件循環(huán),循環(huán)條件是在i值不能整除3,i的初值為1,增量為1,故循環(huán)兩次。在本題中需注意除盡3的條件判斷:i mod 3=0,該條件是從余數(shù)上來判斷的,另外注意計(jì)數(shù)器的使用:i=i+1,最后是布爾變量取反的使用:f=not f。1 / 1浙江省高中信息技術(shù)——算法與算法表示一、選擇題1.某算法的部分流程圖如圖所示。執(zhí)行這部分流程,分別輸入35、50、60,則輸出值依次為( )A.10,3 B.10, 4 C.7, 10, 4 D.10, 12,3【答案】B【知識點(diǎn)】算法的常用表示方法;算法的控制結(jié)構(gòu)【解析】【解答】由流程圖可知:i=1,m=5,i值小于3執(zhí)行循環(huán),第一次循環(huán):g=35,r=g/m=35/5=7,r不在r大于7和小于等于10之間,將i值增1后判斷i值,i=2,小于3,執(zhí)行第二次循環(huán):g=50,r=g/m=50/5=10,r在r大于7和小于等于10之間,故將r的值10輸出,然后將i值增1后進(jìn)行判斷,r=3故符合循環(huán)條件r小于等于3的循環(huán)條件,繼續(xù)循環(huán),第三次循環(huán):g=60,r=g/m=60/5=12,r不在r大于7和小于等于10之間,不進(jìn)行輸出,將i增1后進(jìn)行判斷,此時(shí)i=4超過了終值3,故循環(huán),輸出i值4,由上分析知,該程序共輸出一個(gè)r值10和一個(gè)i值4。故答案選B。【分析】本題考查的是使用流程圖表示算法。在使用流程圖表示算法中,要注意流程圖中各框圖的含義及流程線的走向。尤其是使用判斷框和流程線組成的循環(huán)結(jié)構(gòu)。2.某算法的部分流程圖如圖所示,執(zhí)行完這部分流程后,變量i,s的值分別是( ) A.3,9 B.4,18 C.5,18 D.6,43【答案】B【知識點(diǎn)】常量、變量及變量的賦值;流程圖識讀【解析】【解答】根據(jù)流程圖可知,第一次循環(huán)后,s=3,i=2,第二次循環(huán)后,s=9,i=3,第三次循環(huán)后,s=18,i=4,此時(shí)退出循環(huán)。最終s的值為18,i的值為4。故答案為B。【分析】本題考查的流程圖的識讀。本題的循環(huán)變量不是計(jì)算器變量,而是累加器變量,所以本題不能使用定義循環(huán)只能使用條件循環(huán)。本題的計(jì)算器為i,形式為:i=i+1,累加器變量為s:s=s+3*i,即每次將i值的3倍累加到變量s中當(dāng)s值超過15時(shí)終止循環(huán)。3.某算法的部分流程圖如圖所示,執(zhí)行這部分流程后,變量s的值是( )A.0 B.3 C.4 D.5【答案】A【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】根據(jù)流程圖可知,第一次循環(huán)后,k=2,s=10,第二次循環(huán)后,k=3,s=3,第三次循環(huán)后,k=4,s=0,此時(shí)退出循環(huán)。最終s的值為0。故答案選A。【分析】本題考查的是使用循環(huán)變量來控制循環(huán)的算法流程圖。在本題中,循環(huán)變量為k,k的初值為1,終值為3,步長值為1,當(dāng)k值小于等于3時(shí)執(zhí)行循環(huán),每次循環(huán)計(jì)算s除以k的值并賦給s,最后要求計(jì)算出s值,由于使用計(jì)數(shù)器k來控制循環(huán)所以可以使用定次循環(huán)(for循環(huán)),也可以使用條件循環(huán)(while循環(huán)或dowhile循環(huán))。4.(2016高三上·義烏期中)某算法的部分流程圖如圖所示,執(zhí)行這部分流程后,變量x和Flag的值分別是( )A.2,True B.3,True C.2,F(xiàn)alse D.3,F(xiàn)alse【答案】C【知識點(diǎn)】算法的常用表示方法;算法的控制結(jié)構(gòu)【解析】【解答】由流程圖可知,這是一個(gè)循環(huán)結(jié)構(gòu)。先將x的值賦為1,將flag的值賦為true,然后判斷x是否能被2整除,如不能被2整除則將x的值增1,將flag的值取反繼續(xù)進(jìn)行判斷直到x的值能整除2為止。根據(jù)題意,當(dāng)x=1,F(xiàn)lag=True 時(shí),x mod 2=1>0,循環(huán)繼續(xù),x=x+1=2,F(xiàn)lag=False,此時(shí),x mod 2=0,循環(huán)結(jié)束。因此最終,x=2,F(xiàn)lag=False 由流程圖分析可知本程序只循環(huán)了一次,故x的值為2,flag的值為False。故答案選C。【分析】本題考查的是用流程圖表示算法并分析算法。若想讀懂流程圖,一是能明白流程圖中各框圖的含義,二是要看清流程線的走向。5.某算法的部分流程圖如圖所示,以下說法正確的是( )A.該流程執(zhí)行后,變量k的值是-1B.該流程執(zhí)行后,變量a的值是16C.該流程用于計(jì)算并輸出1+8-16的值D.“a<32 ”共執(zhí)行了3次【答案】D【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】根據(jù)流程圖可知,第一次循環(huán)后,s=1+1×8=9,k=1-1=0,a=2×8=16;第二次循環(huán)后,s=1+1×8+0×16=9,k=1-0=1,a=2×16=32,此時(shí)“a<32不成立,退出循環(huán)。由此可知,最終k=1,a=32,該流程不是用于計(jì)算1+8-16的值,“a<32?”共執(zhí)行了3次。故答案選D。【分析】本題考查的是使用流程圖來表示算法。在分析流程圖時(shí)一定要注意流程線的流向,尤其是向回的箭頭可以構(gòu)成循環(huán)結(jié)構(gòu)。6.某算法的流程圖如圖所示。執(zhí)行這部分流程后,輸出變量i的值是( )A.7 B.9 C.11 D.13【答案】B【知識點(diǎn)】算法的常用表示方法【解析】【解答】 本題考查算法和流程圖,涉及循環(huán)結(jié)構(gòu)。一般采用變量跟蹤法進(jìn)行分析:i i←i+2 s s←s*i 循環(huán)條件s<=5 0001 1 成立3 3 成立5 15 成立7 105 成立9 945 成立11 10395 不成立,退出循環(huán)當(dāng)退出循環(huán)時(shí),變量i的值為11,再執(zhí)行i=i-2,則輸出變量i的值為9。故答案選B。【分析】本題考查的是使用流程圖描述算法。要想明白流程圖描述的算法必須明白流程圖各圖形的含義。7.某算法的部分流程圖如圖所示,執(zhí)行這部分流程“s≤100 ”被執(zhí)行的次數(shù)是( )A.2 B.3 C.4 D.5【答案】C【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】本題的流程圖是一個(gè)典型的循環(huán)結(jié)構(gòu)“s≤100”一共被執(zhí)行四次,前三次是“Y”,最后一次是“N”。故答案選C。【分析】本題考查的是流程圖、等差數(shù)列語句以及累乘器的使用,在循環(huán)中可以使用變量進(jìn)行累加的特點(diǎn)形成一個(gè)等差數(shù)列,如本題,等差數(shù)的初始值為1,公差為2,使用a=a+2,形成一個(gè)1、3、5、7、……的等差數(shù)列,然后再使用累乘器s=s*a將等差數(shù)列中各數(shù)的乘積存儲到變量s中,在s值達(dá)到某個(gè)閥值,本題為100時(shí)終止循環(huán),故本題只能使用條件循環(huán)而不能使用定次循環(huán)。8.(2016·溫州模擬)某算法流程圖如圖所示,執(zhí)行該算法,輸出s的結(jié)果是( ) A.0 B.8 C.10 D.15【答案】D【知識點(diǎn)】算法的常用表示方法;算法的控制結(jié)構(gòu)【解析】【解答】分析算法流程圖運(yùn)行過程:初始值:s=0,i=1。i=1,i<=20成立,執(zhí)行s=s+i=0+1=1;i Mod 9=5不成立,i=i+1=2。i=2,i<=20成立,執(zhí)行s=s+i=1+2=3;i Mod 9=5不成立,i=i+1=3。i=3,i<=20成立,執(zhí)行s=s+i=3+3=6;i Mod 9=5不成立,i=i+1=4。i=4,i<=20成立,執(zhí)行s=s+i=6+4=10;i Mod 9=5不成立,i=i+1=5。 i=5,i<=20成立,執(zhí)行s=s+i=10+5=15;i Mod 9=5成立,輸出s的值為15。故答案選D。 【分析】本題考查循環(huán)語句的運(yùn)行過程,要求考生能讀懂程序代碼,了解各個(gè)變量在程序執(zhí)行過程中的變化。9.某算法的流程圖表示如下,以下說法中不正確的是( )A.的最終結(jié)果是945 B.循環(huán)共進(jìn)行了5次C.程序結(jié)束后,i的值是9 D.該流程圖是一個(gè)循環(huán)結(jié)構(gòu)【答案】C【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】本題循環(huán)進(jìn)行了5次,循環(huán)結(jié)束后,i=11,s=945。故答案選C。【分析】本題考查的是使用流程圖來表示算法。由流程圖知,先將變量s、變量i的值均賦為1,然后判斷i值是否超過10,如果沒有超過則將i值累乘到變量s中,再將i值增加2后賦給變量i,然后再次去判斷i值,如i值沒有超過10則繼續(xù)執(zhí)行循環(huán)體,直到i值超過10時(shí)輸出s值,故本題為一個(gè)定次循環(huán),i的初值為1,終值為10,步長為2,i值為1、3、5、7、9、11,但i值為11時(shí)沒有執(zhí)循環(huán)循環(huán)體,故循環(huán)了5次,s=1*3*5*7*9=945。10.某算法的部分流程圖如圖所示,執(zhí)行這部分流程后,變量a、b的值分別是( )A.3,4 B.3,5 C.8,13 D.8,15【答案】C【知識點(diǎn)】算法的控制結(jié)構(gòu);運(yùn)算符、基本運(yùn)算與表達(dá)式【解析】【解答】分析本題流程圖執(zhí)行過程:初始值:a=1,b=2;b=2,b<8,第一次循環(huán),執(zhí)行語句a=a+b,a=3,b=a+b,b=5;b=5,b<8,第二次循環(huán),執(zhí)行語句a=a+b,a=8,b=a+b,b=13;b=13,b<8不成立,循環(huán)結(jié)束,此時(shí)a=8,b=13。故答案選C。【分析】本題考查循環(huán)結(jié)構(gòu)流程圖執(zhí)行過程及VB表達(dá)式的計(jì)算。11.某算法的流程圖如圖所示,執(zhí)行該流程后,變量x,y的值分別是( )A.3,3 B.7,5 C.10,8 D.20,18【答案】C【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】本循環(huán)進(jìn)行了2次,第一次循環(huán)后,y=3,x=5;第二次循環(huán)后,y=8,x=10。故答案選C。【分析】本題考查的是使用流程圖來表示算法。使用圖形表示算法的思路是一種極好的方法,因?yàn)榍а匀f語不如一張圖。在分析流程圖時(shí)要注意流程線的箭頭指向,尤其是向上的箭頭與判斷框一起會形成循環(huán)結(jié)構(gòu)。12.某算法的部分流程圖如圖所示,執(zhí)行這部分流程后,變量x的值是( )A.0 B.1 C.2 D.8【答案】A【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】根據(jù)流程圖可知,第一次循環(huán)后,n=1,x=50,第二次循環(huán)后,n=2,x=25,第三次循環(huán)后,n=3,x=8,第四次循環(huán)后,n=4,x=2。第五次循環(huán)后,n=5,x=0。此時(shí)退出循環(huán)。故答案選A。【分析】本題考查的是使用流程圖表示算法。從流程圖上來看,本題使用循環(huán)變量n來控制循環(huán),可以使用定次循環(huán),n的初值為0,終值為4,步長為1,故循環(huán)次數(shù)為5次,在循環(huán)體中獎(jiǎng)x除以n后將得到整數(shù)商重新賦給x值,最后輸出x值。13.某算法的部分流程圖如圖所示,執(zhí)行這部分流程,依次輸入5,6,7,則輸出s時(shí),s和a的值分別是( )A.-1,1 B.1,1 C.5,-1 D.6,-1【答案】A【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】本題屬于循環(huán)結(jié)構(gòu)。根據(jù)流程圖可知,第一次循環(huán)后,s=5,a=1;第二次循環(huán)后,s=1,a=1,此時(shí)退出循環(huán)。故答案選A。【分析】本題考查的是使用流程圖表示算法。由流程圖可知,在一次循環(huán)后,a的值由正1變?yōu)樨?fù)1,再次循環(huán)后,由負(fù)1變?yōu)檎?,故a可以看作一個(gè)符號變量,符號變量在程序設(shè)計(jì)中應(yīng)用時(shí)分廣泛,可以使用符號變量來控制運(yùn)算方向,即由加運(yùn)算變?yōu)闇p運(yùn)算,由乘運(yùn)算變?yōu)槌\(yùn)算。14.某算法的流程圖如圖所示,執(zhí)行該算法,當(dāng)x的值為4時(shí),輸出y的值為( )A.9 B.10 C.1 D.12【答案】A【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】當(dāng)x=4時(shí),y=2×4+1=9。故答案選A。【分析】本題考查的是使用流程圖來表示含選擇結(jié)構(gòu)的算法,由流程圖可知,本題為一個(gè)雙分支選擇結(jié)構(gòu),即根據(jù)x值為判斷y值,當(dāng)x<=0時(shí),y=3*x-2,當(dāng)x>0時(shí),y=2*x+1,對于這種較簡單的順序、選擇結(jié)構(gòu)可以直接計(jì)算出結(jié)果,從而選出正確答案。15.某算法部分流程圖如圖所示,執(zhí)行這部分流程,次輸入12、-5、29、18、7,則輸出的值是( )A.12 B.-5 C.29 D.7【答案】C【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】該流程圖是一個(gè)循環(huán)結(jié)構(gòu),變量b的初值為12,i的初值為1,步長為1根據(jù)題意,第一次循環(huán),a=-5,a>b不成立,i=2;第二次循環(huán),a=29,a>b成立,因此b的值被更新為29,i=3;第三次循環(huán),a=18,a>b不成立,i=4;第四次循環(huán),a=7,a>b不成立,i=5,此時(shí)i≤4不成立,退出循環(huán),輸出b的值為29。故答案選C。【分析】本題考查的是使用流程圖來表示算法。由流程圖可知本題為一個(gè)循環(huán)結(jié)構(gòu)中間嵌套一個(gè)選擇結(jié)構(gòu),對于這種較復(fù)雜的結(jié)構(gòu)只能一個(gè)循環(huán)一個(gè)循環(huán)的來分析變量的值最后計(jì)算出結(jié)果。16.某算法的部分流程圖如圖a所示。參照這部分流程圖圖b程序代碼中①處正確的程序段是( )A.For i= 3 To 100 Step 2 s=s+1 Next iB.For i= 1 To 101 Step 2 s=s+1 Next iC.Do While i <= 100 s=s+i i=i+2 LoopD.Do While i <= 100 i=i+2 s=s+i Loop【答案】D【知識點(diǎn)】算法的常用表示方法;算法的控制結(jié)構(gòu);常量、變量及變量的賦值【解析】【解答】圖a是計(jì)算1+3+…+101值的流程圖,A計(jì)算了1+3+…+99的值,B計(jì)算了1+3+…+101的值,C計(jì)算了1+1+3+…+99值。故答案選D。【分析】本題考查的是根據(jù)流程圖來補(bǔ)充完程序代碼。由流程圖可知本題使用循環(huán)變量來控制循環(huán),即為一個(gè)定次循環(huán),循環(huán)變量i的初值為1,終值為100,步長為2,即i=1、3、5、、……、99、101,在i值為101時(shí)終止循環(huán),故s=1+3+……+99,當(dāng)然定次循環(huán)可以使用for循環(huán),也可以使用do while循環(huán),兩者的區(qū)別是for循環(huán)的步長值改變在循環(huán)語句中,而do while循環(huán)的步長值改變在循環(huán)體中。17.某公用電話系統(tǒng)以秒為單位顯示通話時(shí)間,通話費(fèi)以分鐘為單位進(jìn)行計(jì)費(fèi)將通話時(shí)間的秒數(shù)值s,轉(zhuǎn)換為m分(不滿60秒的當(dāng)作1分鐘來計(jì)費(fèi))的算法部分流程圖如圖所示。則流程圖中①②處應(yīng)該填入的是( )A.①s←s-60 ②s<60? B.①s←s+60 ②s<60?C.①s←s-60 ②s<>0? D.①s←s+60 ②s<>0?【答案】C【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】①處為循環(huán)結(jié)構(gòu),每執(zhí)行一次循環(huán),表示分的m會增加1,因此表示秒的s要減少60(60秒轉(zhuǎn)換為1分),故①處答案為s←s—60;當(dāng)s值達(dá)不到60時(shí)(即不滿1分鐘時(shí)),需判斷s值是不是0,0秒時(shí)m無需變化,若剩余時(shí)間不足1分(即00?。故答案選C。【分析】本題考查的是使用流程圖來表示算法以及對算法的分析。由本題的流程圖知該算法是將秒轉(zhuǎn)為分鐘的程序,一般由秒轉(zhuǎn)為分直接將秒除以60即可,而本程序使用的是循環(huán)程序,每循環(huán)一次秒數(shù)減少60,分鐘增加1,故本題使用計(jì)數(shù)器來計(jì)算分鐘:m=m+1。18.(2018·溫州模擬)某流程圖如圖所示。執(zhí)行該算法,下面說法錯(cuò)誤的是( )A.s 的值最終為-5B.語句“k=k+1”共執(zhí)行了 4 次C.語句“s≤0”共判斷了 5 次D.該算法轉(zhuǎn)成 VB 代碼時(shí)能用 Do 循環(huán)語句實(shí)現(xiàn)【答案】A【知識點(diǎn)】算法的控制結(jié)構(gòu)【解析】【解答】由本題流程圖可知:將10賦給s,0賦給k,當(dāng)s的值大于0時(shí)執(zhí)行循環(huán)體,s的值小于等于0時(shí)輸出k,在循環(huán)體中將k的值增1,然后s減去k的值后再賦給s,最后將s的值輸出。所以s的數(shù)學(xué)意義就是s=10-1-2-3-4=0。選項(xiàng)A:最終s的值為0,故本項(xiàng)錯(cuò)。由上述分析k的值為1、2、3、4共四次循環(huán)k=k+1執(zhí)行了4次,本項(xiàng)對。選項(xiàng)C:執(zhí)行了4次循環(huán),在進(jìn)行第5次判斷后循環(huán)終止條件成立退出了循環(huán),本項(xiàng)對。選項(xiàng)D:該算法要使用循環(huán)語句,可以使用do while ……loop語句實(shí)現(xiàn),本項(xiàng)對。故答案選A。【分析】本題考查的是流程圖,在編程之間應(yīng)當(dāng)使用流程圖將算法表示出來。在使用流程圖時(shí)注意流程圖的圖形含義。其中圓角矩形表示起止框、菱形表示判斷框、矩形表示處理框、箭頭表示流程線。19.某算法的部分流程圖如圖所示,執(zhí)行這部分流程后,下列說法正確的是( )A.變量i的值為4B.變量f的值為TrueC.語句“i mod 3=0?”執(zhí)行的次數(shù)為2次D.語句“i←i+1”和“f←Not f”執(zhí)行的次數(shù)為3次【答案】B【知識點(diǎn)】算法的常用表示方法;常量、變量及變量的賦值【解析】【解答】循環(huán)過程中各變量的取值如下表所示:次數(shù) 1 2 3i的取值 1 2 3條件i mod 3 = 0?是否成立 N N Yi←i+1執(zhí)行后i的值 2 3 f←Not f執(zhí)行后f的值 False True 故答案選B。【分析】本題考查的是使用流程圖來表示算法。由流程圖來看盡管本題使用循環(huán)變量來控制循環(huán)但本題采用的是條件循環(huán),循環(huán)條件是在i值不能整除3,i的初值為1,增量為1,故循環(huán)兩次。在本題中需注意除盡3的條件判斷:i mod 3=0,該條件是從余數(shù)上來判斷的,另外注意計(jì)數(shù)器的使用:i=i+1,最后是布爾變量取反的使用:f=not f。1 / 1 展開更多...... 收起↑ 資源列表 浙江省高中信息技術(shù)——算法與算法表示(學(xué)生版).docx 浙江省高中信息技術(shù)——算法與算法表示(教師版).docx 縮略圖、資源來源于二一教育資源庫