资源简介 2.2算法的控制结构一、选择题1.下列关于算法的基本结构说法错误的是( )A.顺序结构中的每个步骤一定会被执行一次,而且仅被执行一次B.对于分支结构来说,必定有一个分支被执行,其它的分支则被忽略C.算法的基本结构分顺序结构、分支结构和循环结构三种D.循环结构中的步骤必定会被执行一次2.某算法的部分流程图如图所示。执行这部分流程,若输入 k 的值为“newyear”,则输出的 s值为( )A.“nwy”B.“ywn”C.“eear”D.“raee”3.某算法的部分流程图如图所示,变量w的初值为空,输入变量x的值为51,执行这部分流程后,变量w的值是( )A.“201” B.“102” C.“121” D.“211”4.某算法的部分流程图如图所示,执行这部分流程,下列说法正确的是 ( )A.其中语句 i<=5 共执行了 6 次B.程序结束后s 值可能为 3C.流程执行结束后k 值一定为 1D.流程执行过程中共产生 5 个 t 值,t 值取值为 1 或 25.如要编程画出由100个圆组成的图案,比较好的算法是( )。A.按顺序执行100个画不同大小圆的程序段B.①先编写1个能画不同大小圆的程序模块 ②在主程序中用100语句调用画圆程序模块C.①先编写1个能画不同大小圆的程序模块 ②用循环方法调用100次画圆程序模块D.不必先定义画圆程序模块,而直接循环100次的方法来画图案6.某算法的部分流程图如图所示。执行这部分流程后,输出t的值为( )A."135" B."147" C."1479" D."13579"7.某算法的部分流程图如图所示。执行这部分流程,输出y的值是( )A.28 B.29 C.30 D.318.某算法的部分流程图如图所示,执行这部分流程后,下列说法正确的是( )A.变量t的值为27 B.变量s的值为40C.变量i的值为5 D.循环条件“s≤40 ”判断了5次9.某算法的部分流程图如图所示,执行该流程,输出t的值是( )A.6 B.7 C.8 D.910.下面用自然语言描述的算法中包含的基本结构有( )① 输入两个正整数m、n;② r ← m除以n的余数;③ m ← n;④ n ← r;⑤ 如果r>0,那么转②⑥ 输出最大公约数m。A.分支结构、循环结构 B.顺序结构、分支结构、循环结构C.顺序结构、循环结构 D.顺序结构、分支结构11.某算法的部分流程图如图所示,执行这部分流程后,输出s,n的值分别是( )A.8,3 B.19,4 C.3,8 D.4,1912.下图算法的基本结构是( )A.顺序结构 B.树形结构 C.选择结构 D.循环结构13.有关选择结构的说法不正确的是( )。A.选择结构是算法的基本结构之一B.任何的程序设计中都有选择结构C.选择结构在程序设计中起到对事物的判断与选择的作用D.在PYTHON 程序设计语言中选择结构一般使用IF语句实现。14.以下流程图,算法执行结果是( )。A.6 B.12 C.18 D.2415.某算法的部分流程图如第 5 题图所示,执行这部分流程图,依次输入 3,2,1,变量 i,s 的值 分别是A.10,1 B.7,2 C.10,2 D.13,316.某算法的部分流程图如下图所示,执行这部分流程,则“s≤100 ”被执行的次数是(▲ )A.2B.3C.4D.517.以下算法的功能是:键盘输入6个数,输出其中负数的和。请使用给出的框图填入左边的算法流程图中,使之能实现上述功能。以下选项正确的是A.⑷ ⑿ ⑹ ⑴ ⑺ ⑼B.⑶ ⑿ ⑹ ⑴ ⑻ ⑼C.⑶ ⑾ ⑸ ⑴ ⑻ ⑼D.⑷ ⑿ ⑸ ⑴ ⑻ ⑼18.某算法流程图如图所示,执行该算法,输出n的结果是( )A.4 B.8 C.12 D.1819.在某银行取款机上,用户银行卡密码验证的过程如下图所示:当用户输入密码时,若第1次输入错误,第2次输入才正确,则整个操作过程的执行流程是( )A.①→②→③→④→⑤B.①→②→③→④→⑥→⑦C.①→②→③→④→⑥→②→③→④→⑤D.①→②→③→④→⑥→⑦→②→③→④→⑤20.某算法的部分流程图如图所示,执行这部分流程图后,变量k的值为( )A.14 B.18 C.24 D.3二、简答题21.如图所示的流程图,请根据要求回答以下问题(1)常见的算法描述主要有三种,本算法描述是什么?(2)本算法的程序结构是什么?(3)本算法程序的输出结果是多少?(4)用计算机程序解决问题的步骤是:(请空白处补充完整)分析问题→设计算法→ →调试运行→检测结果。(5)上述步骤哪-步骤是核心?三、操作题22.某算法的自然语言和流程图描述如下,将流程图①②③④处补充完整。(1)①_________ ②_______ ③______ ④________(2)流程图中虚线框处的算法控制结构类型是_________。(3)本算法实现的功能是(_____)(注:n!=1*2*3*……*n)A.求s=10! B.求s=1+2+3+……+10C.求s=1!+2!+……+10! D.求s=1+1+1+……+1(共10个1)23.闰年是公历中的名词。闰年分为普通闰年和世纪闰年。普通闰年:年份是4的倍数,且不是100的倍数为闰年(如2004年)。世纪闰年:年份是整百,且是400的倍数才是世纪闰年(如1900年不是世纪闰年,2000年是世纪闰年)。即:闰年是指能被4整除但不能被100整除,或者能同时被4和400整除的年份。下面是判断输入的年份是不是闰年的流程图,请将流程图补充完整。(1)请将流程图中标号处补充完整① __________② __________③ __________④ __________24.有个科学猜想的节目内容是:如果有一张足够大的纸,其厚度为0.1毫米,对折一次纸的厚度增加1倍。问:对着多少次后,纸的厚度可以超过珠穆朗玛峰的高度(8848.43米)?请回答以下的问题。(1)根据提议,一张纸的厚度为h,对折k次后,纸的厚度为_______________。(2)描述本题算法的流程图如下图所示,则流程图中①②处应填写的内容分别是①______________,②_______________________。25.小明根据如下流程图编写了VB程序,但运行时提示有错,请找出程序中的5个错误,并改正。(1)错误语句的编号是_______。(2)修改为___________________________。(2)错误语句的编号是_______。(2)修改为___________________________。(3)错误语句的编号是_______。(2)修改为___________________________。(4)错误语句的编号是_______。(2)修改为___________________________。(5)错误语句的编号是_______。(2)修改为___________________________。四、判断题26.在流程图中,表示输入输出功能。(______)27.用流程图描述算法时,矩形框用于表示判断。(_____)五、填空题28.在《几何原本》一书中,古代数学家欧几里得提出了“辗转相除法”,利用这个方法可以求出任意两个正整数的最大公约数。具体步骤如下:(1)输入两个正整数m和n(2)以m除以n,得到余数r(3)若r=0,则输出n的值,算法结束;否则执行步骤(4)(4)令m←n,n←x,并返回步骤(2)其算法可用以下流程图来描述:请补充完成流程图___________(填写正确答案字母)A. B. C. D.029.小强想要了解各省女排队员的平均年龄,为此设计算法,部分流程图如图所示。请将流程图①②处补充完整。①(_____) ②(_____)30.如题图所示的流程图,请根据要求回答以下问题(1)本算法描述的程序结构是什么?(2)x≥0的VB表达式其正确写法应该是什么?(3)根据图示本算法程序的输出结果是多少?(4)3x-2→y在VB中称为_______________语句。(5)用计算机程序解决问题的五个步骤中,哪一步是核心?31.根据图72所示的流程图,回答问题。(1)语句i=i+1总共被执行的次数是________;(2)该算法中用到的两种结构是______和________;(3)该程序实现的功能是__________;(4)若依次输入12、-10、30、19、22,则输出的值是________;(5)编程解决问题的过程分为五个步骤,其中根据问题描述画出流程图属于______。32.写出算法执行结果33.某地一户一表居民实施阶梯式水价方案。阶梯水价计量分三级,第一级为18立方米以下,每立方米按2.4元计价;第二级为18至31立方米,每立方米按3.35元计价;第三级为31立方米及以上,每立方米按4.30元计价。如图2-1-38所示算法用于根据用水量V(立方米)计算水价s(元)。流程图如图所示,①中应入填写的是 ,③中应该填入的是 。参考答案1.D【详解】本题考查的是算法结构。如果一开始条件就为真,则循环结构中的步骤不会被执行,故本题应选D。2.B【详解】本题考查的是流程图识读。本算法中提取字符串k中各字符依次赋值给c,判断是否大于等于t,若是,则将c累加至字符串s中,并将c赋值给t,整体实现了将字符串中依次增大的字符输出的效果,因此B选项正确。3.B【详解】本题考查的是流程图识读。由w=x mod 7 &w及x=x\7可知,这是将x转换为7进制数的过程。51转换为7进制数为:102。故本题应选B。4.B【详解】本题考查的是流程图识读。i初始值为0,每次自增1,i=6时才跳出循环,故语句 i<=5 共执行了 7 次,选项A说法错误;流程执行过程中共产生 6个 t 值,t 值取值为 1 或 2,当t取到3次2和3次1时,则s=2+2+2-1-1-1=6,故选项B说法正确;流程执行结束后k 值可能为1也可能是-1,故选项C说法错误;流程执行过程中共产生 6个 t 值,t 值取值为 1 或 2,故选项D的说法错误。5.C【详解】本题主要考查算法知识。程序中用来执行一个特定任务的一段程序代码可使用程序模块实现,重复执行部分可使用循环结构,因此C选项正确。6.B【详解】本题考查算法流程图的分析。执行过程如表所示:s Len(s) i t"123456789" 9 1 """23456789" 8 3 "1""2356789" 7 5 "14""235689" 6 7 "147"循环条件不成立,输出t故执行这部分流程后,输出t的值为147,故本题选B选项。7.B【详解】本题考查的是流程图的识读。初始x=30,y=0,k=1。30>0成立,执行判断 x mod 2=30 mod 2=0<>1,执行y=y-k=0-1=-1,x=x\2=15,k=k*2=2;15>0成立,执行判断 x mod 2=15 mod 2=1,执行y=y+k=-1+2=1,x=x\2=7,k=k*2=4;7>0成立,执行判断 x mod 2=7 mod 2=1,执行y=y+k=1+4=5,x=x\2=3,k=k*2=8;3>0成立,执行判断 x mod 2=3mod 2=1,执行y=y+k=5+8=13,x=x\2=1,k=k*2=16;1>0成立,执行判断 x mod 2=1mod 2=1,执行y=y+k=13+16=29,x=x\2=0,k=k*2=32;0>0不成立,输出y=29,故选项B正确。8.C【详解】本题考查的是流程图识读。初始值t=0,s=0,i=0.第一次判断s<=40成立,s=s+t=1,t=t*3=3,i=i+1=1;第二次判断s<=40成立,s=s+t=4,t=t*3=9,i=i+1=2;第三次判断s<=40成立,s=s+t=13,t=t*3=27,i=i+1=3;第四次判断s<=40成立,s=s+t=40,t=t*3=81,i=i+1=4;第五次判断s<=40成立,s=s+t=121,t=t*3=243,i=i+1=5;第六次判断s<=40不成立,跳出循环故执行后,变量t的值是243,变量s的值是121,变量i的值为5,循环条件“s≤40 ”判断了6次。选项C正确。9.D【详解】本题考查的是流程图识读。初始a=16,b=30,t=0。b>0成立,ab>0成立,ab>0成立,ab>0成立,ab>0成立,ab>0成立,ab>0成立,ab>0成立,ab>0成立,ab=0,b>0不成立,输出t=9故选项D正确。10.C【详解】本题考查的是算法结构。算法的三种基本结构是顺序结构、循环结构、分支结构。顺序结构:程序中的各个操作是按照它们在源代码中的排列顺序依次执行的;分支结构:根据某个特定的条件进行判断后,选择其中一支执行,分为单项选择、双选选择和多项选择;循环结构:反复执行某个或某些操作,知道条件为假或为真时才停止循环,分为当型循环和直到型循环,当型循环先判断条件,当条件为真时执行循环体,直到型循环先执行循环体,再判断条件,当条件为假时结束循环。由②依次运行至④,可知是顺序结构运用;由⑤会跳转至②,使②至④会重复运行,可知是循环结构的运用。故应选C。11.B【详解】本题考查的是流程图识读。本题流程图是循环结构。根据循环条件,循环共执行3次,第1次循环后s=3,n=2;第2次循环后s=8,n=3;第3次循环后s=19,n=4,此时退出循环,最终s=19,n=4,故选项B正确。12.A【详解】本题考查的是算法结构。算法结构有:顺序结构、选择结构、循环结构。顺序结构表示程序中各步操作按出现的先后顺序执行;选择结构表示程序的处理步骤出现了分支,需要根据某一特定条件选择其中一个分支执行;循环结构表示程序反复执行某个或某些操作,直到判断条件为假(真)时才可终止循环。由图中可知这是一个顺序结构。故应选A。13.B【详解】本题考查的是选择结构。算法的结构有:顺序结构、选择结构、循环结构。程序是由顺序结构、选择结构、循环结构组成的,但并不是所有程序设计中都有选择结构。故选项B错误。14.C【详解】本题考查的是流程图的识读。初始值:i=1,s=0i<=2成立,执行j=1,j<=3成立,执行s=s+i*j=0+1*1=1,j=j+1=2;内循环j<=3成立,执行s=s+i*j=1+1*2=3,j=j+1=3;内循环j<=3成立,执行s=s+i*j=3+1*3=6,j=j+1=4;内循环j<=3不成立,执行i=i+1=2;i<=2成立,执行j=1,j<=3成立,执行s=s+i*j=6+2*1=8,j=j+1=2;内循环j<=3成立,执行s=s+i*j=8+2*2=12,j=j+1=3;内循环j<=3成立,执行s=s+i*j=12+2*3=18,j=j+1=4;内循环j<=3不成立,执行i=i+1=3;i<=2不成立,输出s=18,故选项C正确。15.A【详解】本题主要考查算法流程图。s=0,i=1,第一遍循环,满足i<10,输入a=3,s=s+i mod 3\a=0+1 mod 3\3=0(mod取余,“\”优先级大于mod),i=i+3=4;第二遍循环,满足i<10,输入a=2,s=s+i mod 3\a=0+4 mod 3\2=0,i=i+3=7;第三遍循环,满足i<10,输入a=1,s=s+i mod 3\a=0+7 mod 3\1=1,i=i+3=10;第四遍循环,不满足i<10,退出循环,输出i=10,s=1,故本题选A选项。16.C【详解】本题主要考查算法流程图知识点。a=1,s=1,循环退出条件是s>100,每次循环a递增2,故当s=s*a=1*1*3*5*7=105,退出循环,此时“s≤100 ”被执行4次,a=7,故本题选C选项。17.A【详解】本主要考查算法流程图。分析流程图,框1是初始化,变量M是用来对负数求和,变量T用来控制输入6个数,故1处填M=0,T=1;框2控制输入6个数,填T<=6;框3输入A,框4判断是否是复数,填A<0;框5对负数求和,填M=M+A,框6变量T递增1继续循环,故本题选A选项。18.C【详解】本题主要考查算法读取。题中mod用于取余运算,执行过程为m=96,n=36,r=24—> m=36,n=24,r=12—> m=24,n=12,r=0,此时跳出循环,输出n,结果为12,因此C选项正确。19.C【详解】本题考查的是流程图识读。若第1次输入错误,执行流程为:①→②→③→④→⑥→②,第2次输入才正确,执行流程为:②→③→④→⑤,故选项C正确。20.C【详解】本题主要考查算法流程图读取。图中当k mod y=0成立时,输出k;当当k mod y=0不成立时,k=k+x;因此,k分别为6,12,18,24,当k=24时,k mod y=0成立,输出k为24。因此C选项正确。21.(1)流程图(2)循环结构和分支结构(选择结构)(3)72(4)编写程序(5)设计算法【详解】本题考查的是算法相关知识。(1)描述算法的方法有:流程图、自然语言、伪代码。图中是流程图。(2)该流程有往回走,有判断,故主要结构是循环结构和分支结构(选择结构)。(3)初始n=4,i=2,f=3,第一次循环,i<=n成立,执行f=f*i=3*2=6,i=i+1=3;第二次循环,i<=n成立,执行f=f*i=6*3=18,i=i+1=4;第三次循环,i<=n成立,执行f=f*i=18*4=72,i=i+1=5;i<=n不成立,最后输出72。(4)用计算机程序解决问题的步骤是:分析问题→设计算法→编写程序→调试运行→检测结果。(5)设计算法是核心。22.i<=10 t←t×i 或 t=t*i s←s+t 或 s=s*t i←i+1 或者i=i+1 或者i+=1 循环结构 C【详解】本题主要考查算法的描述及其实现。①此处判断变量i是否小于等于10,故填i<=10 。②由第三步可知,此处填t←t×i 或 t=t*i。③同理,可知此处填s←s+t 或 s=s*t。④由第四步可知此处填i←i+1 或者i=i+1 或者i+=1。⑤程图中虚线框处的算法控制结构类型是循环结构。⑥分析流程图可知,本算法实现的功能是求s=1!+2!+……+10!,故选C选项。23.year year 0 0【详解】本题主要考查算法流程图知识点。①此处将年份year与100取模赋给变量c,故此处填year。②此处将年份year与400取模赋给变量d,故此处填year。③此处判断变量b是否等于0,即年份是不是4的倍数,故此处填0。④此处判断变量c是否等于0,即年份是不是100的倍数,若c不等于0,输出输入的年份是闰年,否则输出输入的年份不是闰年,故此处填0。24. ①0 ②或【详解】本题主要考查算法流程图知识点。① 一张纸的厚度为h,对折1次后,纸的厚度为h×21,对折2次后,纸的厚度为h×22,故对折k次后,纸的厚度为h×2k 。②①循环条件是h>8848.43,h的初始值为0.0001,k的初始值为0。③②每折一次,厚度h变为2倍,故此处填h←h×2 或 h×2k+1×0.001。25.(1)错误语句的编号是 ① 。(1分)(2)修改为 s=0:j=1:n=0 。(2分)(2)错误语句的编号是 ② 。(1分)(2)修改为 do while j<=10 。(2分)(3)错误语句的编号是 ③ 。(1分)(2)修改为 x=inputbox(“ ”) 。(2分)(4)错误语句的编号是 ⑦ 。(1分)(2)修改为 end if 。(2分)(5)错误语句的编号是 ⑩ 。(1分)(2)修改为 print n 。(2分)【详解】本题主要考查算法流程图及VB程序调试。分析程序可知,(1)多个变量初始化,使用“:”分隔,故编号①应修改为s=0:j=1:n=0。(2)第②条语句和第⑨条语句对应,采用while循环结构,故编号②应修改为do while j<=10。(3)使用inputbox函数,将接收到的值赋给变量x,故编号③应修改为x=inputbox(“ ”)。(4)条件分支仅采用单分支,没有采用双分支,故编号⑦应修改为end if。(5)对照流程图,最后输出n的值,故编号⑩应修改为print n。26.错误【详解】本题主要考查算法流程图。菱形是条件判断框,平行四边形是数据输入/输出框,圆角矩形是开始/结束框,矩形是数据处理框,故表述错误。27.错误【详解】本题主要考查算法流程图。用流程图描述算法时,矩形框用于表示数据处理,菱形框用于表示判断,故表述错误。28.C【详解】本题主要考查算法流程图的执行。分析题干,首先输入两个正整数m和n,对应与流程图中的平行四边形框;其次是以m除以n,得到余数r,应该对应的是矩形处理框,接着是用菱形判断框判断r的值是否为0,故本题选C选项。29.①i←i+1 ②ave←sum/(i-1)【详解】本题主要考查算法流程图。分析流程图可知,一共n个球员,变量y是球员年龄,当y不等于0且i小于等于n时,循环将y加到sum中,用变量i控制球员个数,故①填i←i+1;不满足循环条件时,输出平均年龄,最后一次循环条件不满足,即球员人数是i-1,故②填ave=ave←sum/(i-1)。30.(1)选择结构(2)x>=0(3)-5(4)赋值(5)设计算法【详解】本题主要考查算法流程图。(1)由图可知,本算法描述的程序结构是选择结构。(2)x≥0的VB表达式其正确写法应该是x>=0。(3)x=-1,不满足x>=0,执行y=3x-2=-5,故根据图示本算法程序的输出结果是-5。(4)3x-2→y在VB中称为赋值语句。(5)用计算机程序解决问题的五个步骤中,设计算法是核心。31.4 分支结构 循环结构 求5个数中的最大值 30 设计算法【详解】本题主要考查算法流程图。(1)i=1,循环条件是i<=4,故语句i=i+1总共被执行的次数是4次。(2)该算法中用到的两种结构是分支结构和循环结构。(3)分析流程图可知,该程序实现的功能是求5个数中的最大值。(4)若依次输入12、-10、30、19、22,则输出的值是30。(5)编程解决问题的过程分为五个步骤,其中根据问题描述画出流程图属于设计算法。32.3【详解】本题主要考查算法流程图的执行。A=6,B=8,C=3,不满足A>B,满足A>C,执行A=C=3,输出A的值为3。33.V<31 、 S=4.3V【详解】本题主要考查算法流程图的执行。第一级为18立方米以下,每立方米按2.4元计价,第二级为18至31立方米,每立方米按3.35元计价;第三级为31立方米及以上,每立方米按4.30元计价,故①处应填V<31 ,满足①处的条件时,执行②S=3.35V,否则执行③S=4.3V。 展开更多...... 收起↑ 资源预览