内容正文:
3.2 算法及其描述
一、选择题
1.求出1到100的累加和,设计算法时最合适的是( )
A.顺序结构 B.循环结构 C.选择结构 D.环形结构
2.网上购物是随着互联网发展而产生的一种新型购物方式,我们尝试用算法的眼睛看待生活,用算法的思维去解决实际问题。如图淘宝网购物流程,其中4-6的步骤可以用程序基本结构的( )描述。
A.选择结构 B.顺序结构 C.网状结构 D.循环结构
3.根据如图所示的算法流程图,若输入A的值为2,则输出A的值是( )
A.0
B.1
C.2
D.3
4.某算法的部分流程图如右图所示,以下说法正确的是( )
A.该流程执行完,输出的结果是41
B.该流程执行后,变量a的值是32
C.交换s←s+k*a和k←1-k这两个语句的顺序,不影响输出结果
D.该流程执行后,变量k的值是1
5.某算法的流程图如图所示,当输入n为4321时,执行该流程图后,下列说法不正确的是( )
A.变量s的终值为10 B.“n!=0”语句共执行4次
C.循环体部分的执行次数为4 D.该流程图符合算法的有穷性特征
6.如图流程图的基本结构为( )
A.顺序结构 B.树形结构 C.选择结构 D.循环结构
7.某算法部分流程图如图所示,执行这部分流程,若输入的值为47和3,则输出s的值为( )
A.1 B.2 C.3 D.4
8.用于求5!(n!=1*2*3……*n)的算法流程图如图所示,则下列选项中说法不正确的( )
A.最后输出的结果为120
B.当i的值为5时,直接输出t的值
C.判断条件“i>5?”一共执行了5次
D.该流程图中运用了循环的控制结构
9.某算法的部分流程图如图所示,执行该流程图,输入num为24,则输出s的值为( )
A.234 B.226 C.2223 D.2233
10.某饮品店采用会员积分消费模式。顾客扫描店铺二维码关注公众号,输入手机号及个人资料注册后即成为普通会员,每消费10元可积1分。消费积分累计100分,升级为V1会员,享受8折消费优惠;消费积分累计180分,升级为V2会员,享受7折消费优惠。用算法流程图描述“消费积分累计100分,升级为V1会员;消费积分累计180分,升级为V2会员”的问题,用t表示顾客的消费积分,下列选项不正确的是( )
A. B.
C. D.
11.假设有30颗糖果,两人轮流取糖果,每次可以取1至2颗,拿到最后一颗糖果的人获胜。如果你想获胜,你一定要选择后取。具体做法是:若对手取i颗(i为1或2),那么自己取( )颗糖果,此做法必然确保获胜。( )
A.3-i B.4-i C.i D.1
12.某算法的部分流程图如图所示,执行这部分流程,若输入x的值依次为l0,7,8,12,0,则输出k的值是( )
A.2 B.3 C.4 D.5
13.某算法的部分流程图如图所示,若列表a的值为[162,184,171,166,177,179],key的值为170,执行这部分流程后,f、k的值分别为( )
A.False 0 B.True 1 C.True 2 D.True 3
14.某算法的部分流程如图所示,执行这部分流程,若输入s为“10sh23ab”,则输出t的值是( )
A.0 B.2 C.3 D.6
15.若输入 16 和 12,输出结果是( )。
A.0 B.1 C.4 D.12
二、填空题
16.如图所示算法,输出结果是 。
17.流程图表示变量的 与 。
18.阅读如图所示的流程图,如果输入的a和b的值分别为2019和2020,那么输出的a的值为 ,b的值为 。
19.算法是解决问题的方法和确定的、( )的步骤。
20.2021年7月19日-20日,河南郑州经历了百年罕见的特大暴雨,城市受灾严重,一段众人合力破窗救出一位外婆和外孙、外孙女的视频惊心动魄。
原来60多岁外婆开车接外补和外孙女放学途中,遭遇车辆被大水围困。外婆立即给较远位置的女儿打电话求助,报出她附近店铺名字:一家便利店:一家酒店和一家面馆。女儿第一反应是报警,但当时所有报警电话都占线:于是女儿通过外卖平台和点评软件搜索便利店、面馆、酒店的名字:确定外婆的位置,并查询到这些店铺的联系电话,三家店铺均打通电话,但便利店老板在较远位置救援,店内无人;面馆只有一人,立刻赶去现场;酒店有数人也赶去救援。于此同时,无法赶赴现场的女儿在安全知识平台查询呛水、溺水抢救措施,以备急用。
大家想尽办法,利用有限的工具,最终在大水即将漫过车顶时救出被困三人至安全处。众人喜极而泣,对女儿冷静、睿智地正确“远程求救”纷纷表示赞赏。
请阅读以上材料,分析女儿危急关头处理事件的方法与流程,完成下列各题。
分析女儿求助流程图,①②③处的流程分别是( )、( )、( )。
(填字母:A.平台查询店铺电话及救援位置 B.报警成功 C.联系到多人救援 D.拨打便利店电话)
21.以下算法的输出结果是: 。
三、判断题
22.深度优先搜索算法是否适用于所有类型的图( )
23.算法就是用计算机求解某一问题的方法,是能被机械地执行的动作或指令的无穷集合。( )
24.衡量算法的优劣往往从时间复杂度和空间复杂度两个维度考虑。( )
25.循环结构不能嵌套判断结构。( )
四、操作题
26.某城市公交车票价2元,乘客可以刷卡乘车。刷卡时,若公交车卡余额不足2元,提示“请投币”;若余额大于等于2元但小于10元,提示“余额即将不足”;若余额大于或等于10元,提示“欢迎乘车”。小艾同学通过分析,使用流程图描述该功能的算法如下:
小艾同学接着根据流程图使用python编写程序,主要部分代码如下:
(1)流程图(1)处应填写 。
(2)程序中,第1行中“float”作用是 。
(3)第9行下划线处应填写 。
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.B
【详解】本题考查算法相关内容。算法有顺序、选择(分支)、循环三大基本结构。求出1到100的累加和,需要执行重复求和运算,设计算法时最合适的是循环结构。故本题答案是B选项。
2.A
【详解】本题主要考查算法基本控制结构。由图可知,其中4-6的步骤可以用程序基本结构的选择结构描述,故本题选A选项。
3.B
【详解】本题主要考查算法流程图的执行。A=2,满足判断条件A>1,执行A=A-1=1,输出A的值是1,故本题选B选项。
4.A
【详解】本题考查算法流程图相关内容。其运行过程如图所示:。A选项,该流程执行完,输出的结果是41,选项正确。B选项,该流程执行后,变量a的值是64,选项错误。C选项,交换s←s+k*a和k←1-k这两个语句的顺序后,输出结果为17,选项错误。D选项,该流程执行后,变量k的值是0,选项错误。故本题答案是A选项。
5.B
【详解】本题考查算法流程图的识读。分析流程图可知,该流程图实现对输入n的各个位进行求和。当输入n为4321时,“n!=0”语句共执行5次。故选B。
6.D
【详解】本题考查的是程序的基本结构。程序基本结构有三种:顺序结构、选择结构和循环结构。题目中流程图是循环结构。选项D正确。
7.C
【详解】本题考查算法流程图。输入n=47,k=3,s=0
第一次循环,满足n>0,x=n%k=2,不满足x=0,s=s+1=1,n=n//k=15
第二次循环,满足n>0,x=n%k=0,满足x=0,n=n//k=5
第三次循环,满足n>0,x=n%k=2,不满足x=0,s=s+1=2,n=n//k=1
第四次循环,满足n>0,x=n%k=1,不满足x=0,s=s+1=3,n=n//k=0,循环结束,输出s的值是3。故选C。
8.B
【详解】本题主要考查算法流程图的执行。判断条件是当i>5时推出循环,此时t=t*i=1*2*3*4*5=120,即最后输出结果为120;当i的值为6时,直接输出t的值;判断条件“i>5?”一共执行了5次;该流程图中运用了循环的控制结构,故本题选B选项。
9.C
【详解】本题考查流程图。程序运行过程如下。因此输出s的值为2223。故答案为:C。
s
i
num
2
24
2
2
12
22
2
6
222
2
3
222
3
3
2223
3
1
10.D
【详解】本题考查的是流程图识读。分析D选项的流程图,当条件“t>=100”不成立时(即表示t<100),再去判断条件“t>=180”是没有意义的;其次,通过代值(t=200)得到的结果是“显示V1会员”,是不正确的。
11.A
【详解】本题考查的是算法相关知识。30÷(1+2)=10组,故保证和对手取的糖果数和为3就可以顺利取得最后一颗糖果。故本题应选A。
12.B
【详解】本题考查的是流程图识读。阅读流程图可知,该程序功能是依次输入x并累加,如果累加结果大于等于10,记录次数k,并重置累加结果为0。输入10满足条件,记录k=1,重置y=0;输入7,8后再次满足条件,记录k=1+1=2,重置y=0;输入12后再次满足条件,记录k=2+1=3,重置y=0;输入0,程序结束。故本题应选B。
13.C
【详解】本题考查的是流程图识读。初始k=0,j=0,f=false,a=[162,184,171,166,177,179],key=170,len(a)=6。
j<len(a)成立,a(0)=162>170不成立,执行j=j+1=1;
j<len(a)成立,a(1)=184>170成立,a[1]<a[0] or f=false 成立,执行k=j=1,f=true,j=j+1=2;
j<len(a)成立,a(2)=171>170成立,a[2]<a[1] or f=false 成立,执行k=j=2,f=true,j=j+1=3;
j<len(a)成立,a(3)=166>170不成立,执行j=j+1=4;
j<len(a)成立,a(4)=177>170成立,a[4]<a[2] or f=false不成立,执行j=j+1=5;
j<len(a)成立,a(5)=179>170成立,a[5]<a[2] or f=false不成立,执行j=j+1=6;
j<len(a)不成立,输出f=true,k=2,选项C正确。
14.C
【详解】本题主要考查算法流程图的执行。i=1,s=“10sh23ab”,c=mid(s,i,1),当c是数字时,执行t=t*10+val(c),否则执行t=int(sqr(t)),当i=1时,t=1;当i=2时,t=1*10+0=10;当i=3时,t=int(sqr(t))=3;当i=4时,t=int(sqr(t))=1;当i=5时,t=1*10+2=12;当i=6时,t=12*10+3=123;当i=7时,t=int(sqr(t))=11;当i=8时,t=int(sqr(t))=3,故执行这部分流程,输出t的值是3,故本题选C选项。
15.C
【详解】本题考查的是流程图识读。阅读流程图可知,这是采用辗转相除法求最大公约数。16 和 12的最大公约数是4,故本题应选C。
16.21
【详解】本题考查算法分析。初始化A=0,B=1。运行过程为:
A=1,B=2。
A=3,B=5。
A=8,B=13。
A=21,B=34。
故正确答案为:21。
17. 计算 赋值
【详解】本题考查的是流程图。本题考查算法流程图。菱形是条件判断框,平行四边形是数据输入/输出框,圆角矩形是开始/结束框,矩形是数据处理框(用于变量的计算与赋值)。
18. 2020 2019
【详解】本题考查算法流程图的识读。该流程图实现交换a、b的值,a=2019,b=2020,因此输出的a、b的值分别是2020和2019。
19.有限
【详解】本题考查的是算法定义。所谓“算法”就是解题方法的精确描述,由有限个步骤组成。
20. B A C
【详解】本题考查的是流程图相关知识。①②③处的流程分别是B判断报警成功与否——如果报警不成功——A平台查询店铺电话及救援位置——拨打店铺电话——判断是否能C联系到多人救援。
21.85
【详解】本题考查的是流程图的执行过程。a=“5”,b=“8”,“5”>“8”,N,x=“85”。故输出的结果为85。
22.错误
【详解】本题考查算法。
深度优先搜索算法并不适用于所有类型的图。例如,对于存在环的图,如果没有合适的终止条件,深度优先搜索可能会陷入无限循环。此外,对于某些特定类型的问题,广度优先搜索可能更为合适。故错误。
23.错
【详解】本题考查算法的概念
算法就是用计算机求解某一问题的方法,是能被机械地执行的动作或指令的有穷集合。故表述错误
24.正确
【详解】本题考查的是算法。衡量算法的优劣往往从时间复杂度和空间复杂度两个维度考虑,题干中的说法正确。
25.错误
【详解】本题考查的是算法结构。循环结构可以嵌套判断结构,题干中的说法错误。
26. m<10 将输入的字符串转换成浮点数(语义类似即可) m=m-2或m-=2
【详解】本题考查算法描述及Python选择结构程序设计相关内容。本题关键之处是:若公交车卡余额不足2元,提示“请投币”;若余额大于等于2元但小于10元,提示“余额即将不足”;若余额大于或等于10元,提示“欢迎乘车”。①处,观察流程图,结合题意:可知,当m<2条件不成立,即m大于等于2时,需要去判断m是否小于10,故此处应填写:m<10;②处,Python提供了input()函数,可以用来读取用户的输入。当用户输入一个浮点数时,需要使用float()函数将字符串转换为浮点数。故float的作用是:将输入的字符串转换成浮点数;③处,观察流程图,结合题意,可知,若余额大于等于2元但小于10元,或者余额大于或等于10元时,都可以刷卡乘车,刷卡后,余额将-2,即m=m-2或m-=2。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$