内容正文:
四川省普通高中学业水平合格性考试技术(六 )
信息技术(六 )
(考试时间:60分钟;满分:100分)
本试卷分总分和第Ⅱ卷,总分为选择题,第Ⅱ卷为非选择题。
第Ⅰ卷得分
第Ⅱ卷得分
总分
总分人
第 Ⅰ卷(选择题 共60分)
注意事项:
1.答Ⅰ卷前,务必用黑色墨迹签字笔将自己的姓名、准考证号、考试科目填写在答题卡上。考试结束时,由监考人员将试卷和答题卡一并收回。
2.每小题选出答案后,用2B铅笔把答题卡上对应题目选项的答案标号涂黑。如需改动,用橡皮擦干净后,再选涂答案;不能答在试卷上。
一、单选题(共20小题,每小题2分,满分40分)
在每小题给出的四个备选项中,只有一项符合题目要求。
1.某运动会检录系统的部分功能是:系统管理员事先将比赛项目、参赛人员、检录时间、检录地点等信息输入到服务器中,系统自动生成各赛事检录信息。在各项比赛检录前,系统将检录信息发布在赛场的大屏幕上并发送到领队的手机APP,领队提示运动员检录。运动员到赛场检录终端通过人脸识别或者使用植入电子标签的号码牌进行身份核验,完成检录。下列关于该系统中数据与信息的说法,正确的是( )
A.检录过程没有涉及数据处理 B.该系统中的数据都是结构化数据
C.检录信息对所有运动员价值相同 D.运动员的检录行为会产生数据
【答案】D
【详解】本题考查信息系统相关内容。A选项,在整个检录过程中,涉及到了多处数据处理,选项说法错误。B选项,在该系统中,像运动员的人脸图像数据属于非结构化数据,号码牌植入的电子标签信息等可能属于结构化数据,但整体来看系统中并非所有的数据都是结构化数据,选项说法错误。C选项,检录信息对于不同的运动员价值是不一样的,例如对于即将参加比赛的运动员来说,这个检录信息至关重要,决定其能否按时准确地进入比赛准备环节;而对于还未轮到比赛或者已经比赛结束的运动员来说,当下这次检录信息的价值就相对较小了,选项说法错误。D选项,运动员到赛场检录终端进行身份核验这个检录行为,无论是通过人脸识别时采集的人脸特征数据、识别的结果数据,还是使用电子标签的号码牌进行核验时读取到的标签相关数据以及核验情况等,都会产生相应的数据,选项说法正确。故本题答案是D选项。
2.有如下Python 程序段:
from random import randint
s ='0123456'
k=randint(1,3)
n=k
while n > 0:
k=(k+3)%len(s)
s=s[:k]+s[k+1:]
n=n-1
print(s)
执行该程序段后,输出的结果不可能是( )
A.012356 B.01346 C.02356 D.0245
【答案】C
【详解】本题考查python程序设计。C选项正确,分析程序段可知,k的取值可能为1,2,3,而s=s[:k]+s[k+1:]实现删除字符串s中索引为k的字符。当k=1时,n=1,while循环进行一次即结束,(k+3)%len(s)的值为4,即删除索引为4的字符,输出s结果为“012356”,A选项有可能。当k=2时,n=2,while循环进行两次才结束,第一次循环,(k+3)%len(s)的值为5,即删除索引为5的字符,s为“012346”,第二次循环,(k+3)%len(s)的值为2,删除索引为2的字符,s为“01346”,B选项有可能。当k=3时,n=3,while循环进行三次才结束,第一次循环,(k+3)%len(s)的值为6,即删除索引为6的字符,s为“012345”,第二次循环,(k+3)%len(s)的值为3,删除索引为3的字符,s为“01245”,第三次循环,(k+3)%len(s)的值为1,删除索引为1的字符,s为“0245”,D选项有可能。因此,本题选C。
3.现有近似求ex的公式如下:
实现上述功能的Python程序段如下:
x=int(input("请输入x="))
n=int(input("请输入n="))
e=1;p=1;i=0
while i<n:
print(e)
方框处的代码由以下三部分组成:
①i=i+1 ②p=p*i ③e+=x**i/p
下列选项中,代码顺序正确的是( )
A.①③② B.①②③ C.③①② D.③②①
【答案】B
【详解】本题考查Python程序执行与调试。根据while循环语句的结构,由于变量i的初始值为0,所以在循环内需要先执行i=i+1,然后求表达式中的分母,p=p*i,最后执行累加表达式e+=x**i/p,所以选项B符合题意。故选B。
4.智能+制造的核心是( )
A.增加人力 B.提高生产效率和质量 C.减少机器使用 D.降低工资
【答案】B
【详解】本题考查人工智能相关内容。“智能+X”的含义是指将人工智能技术与其他行业或领域相结合,以解决复杂问题并推动各行业或领域的创新和发展。这一概念强调了人工智能技术的广泛应用和交叉融合,旨在通过人工智能技术为各个行业或领域带来前所未有的便利和创新。智能+制造的核心在于通过自动化和机器人技术来提高生产效率和产品质量。故本题答案是B选项。
5.下列属于某一信息系统的输出设备的是( )
A.刷脸考勤系统的摄像头 B.无人机驾驶系统中的避障传感器、测距传感器
C.翻译系统中的扫描翻译笔 D.广告公司喷绘系统中的绘图仪
【答案】D
【详解】本题考查信息系统组成。在信息系统中,输出设备是用于将处理结果展示给用户的设备。A项中的摄像头是输入设备,用于采集图像信息;B项中的避障传感器和测距传感器也是输入设备,用于采集环境信息;C项中的扫描翻译笔是输入设备,用于读取文本信息。只有D项中的绘图仪用于输出信息到实物介质上,因此属于输出设备。故选D。
6.下列关于数据、信息和知识的说法,正确的是( )
A.数据自古就有,而信息是在计算机诞生后才有的
B.结绳记事中通过“大事大结,小事小结”来记录不同的事件,其中绳结是信息
C.考古发现可以让我们了解过去的文化,说明信息不会随着时间的推移而变化
D.“仁者见仁,智者见智”说明人们接收同样的信息后,所构建的知识是有区别的
【答案】D
【详解】本题数据、信息和知识的描述。
A. 错误。信息并不是在计算机诞生后才有的,信息是对数据的加工和处理,早在人类文明初期就存在。
B. 错误。在结绳记事中,绳结本身是数据,而通过绳结传达的意义才是信息。
C. 错误。信息可以随着时间的推移而变化,考古发现只是通过现存的证据来推测过去的文化。
D. 正确。“仁者见仁,智者见智”说明同样的信息经过不同人的理解和思考,会形成不同的知识体系,这体现了知识的主观性和个体差异。
故选D。
7.在python中,运行下列程序,正确的结果是( )
s=0
for i in range (1,6):
s=s+i
print("i=",i,"s=",s)
A.i=4 s=10 B.i=5 s=10 C.i=5 s=15 D.i=6 s=15
【答案】C
【详解】本题考查Python程序设计相关内容。分析程序段,其功能是通过for循环计算1--5的和,然后输出i和s的值。执行完for循环后,结果s为1--5的和,即15;结合range函数特点,推知i的值为5,故本题答案是C选项。
8.某公司编写了一个根据员工年终考核量化分值评定等级的Python程序,程序代码如下所示。当输入员工年终考核量化分值88.8后,程序运行结果是( )
A.考核等级为:A等 B.考核等级为:B等
C.考核等级为:C等 D.考核等级为:D等
【答案】B
【详解】本题考查的是多分支语句。程序通过分数来判定等级。输入的分数为88.8,先与条件判断: if m<70: 不满足,因为88.8大于70。 elif m<80: 不满足,因为88.8大于80。elif m<90: 满足,因为88.8小于90。满足条件后,grade被设定为“B等”。因此,程序运行结果为“考核等级为:“B等”。故选B。
9.某市为了优化公共交通体系,引入了无人驾驶出租车。该出租车配备自动驾驶系统,搭载激光雷达、高清摄像头等设备,行驶中实时采集车距、车速和路面图像等路况数据,结合深度学习模型,能够精准识别交通标识、路障、行人车辆等,以应对复杂的交通状况。乘客通过手机APP进行预约乘车,体验全程无人驾驶服务。关于自动驾驶系统中涉及的人工智能技术,下列描述正确的是( )
A.系统根据路况规划路线,需要手工构造的知识库和推理引擎
B.系统通过学习海量数据实现交通标识的精准识别
C.激光雷达自动采集车距、车速,是一种人工智能技术的应用
D.无人驾驶出租车的运营,造成部分出租车司机失业,应限制其发展
【答案】B
【详解】本题考查人工智能。B选项正确,根据题意,行驶中实时采集车距、车速和路面图像等路况数据,结合深度学习模型,而深度学习是需要通过海量数据训练学习的。A选项错误,自动驾驶系统的路线规划主要依靠深度学习,它通过大量的地图数据、实时路况数据等进行训练,而不是手工构造知识库和推理引擎。C选项错误,激光雷达自动采集车距、车速不是人工智能技术。激光雷达是一种利用激光来测量距离的传感器,它通过发射激光束并接收反射光来计算物体与车辆之间的距离,以及根据反射光的变化来间接计算车速。D选项错误,无人驾驶出租车的运营,虽然造成部分出租车司机,但无人驾驶技术也带来了许多好处,如提高交通效率、减少人为驾驶错误导致的交通事故等。而且社会可以通过职业培训等方式帮助出租车司机转向其他相关领域的工作,而不是限制无人驾驶技术的发展。因此本题选择B。
10.国庆自驾游风靡全国,小明想通过导航软件来规划行程路线。在手机上打开导航APP,通过语音输入自驾游目的地和需求,导航软件能根据输入的信息,道路拥堵情况及个人驾驶习惯规划出几条路线供小明选择。开始导航后,软件会模仿真人语音播报当前路况,并能够在小明变更路线的情况下及时更新剩下的行驶路线。关于数据采集与编码的说法,正确的是( )
A.存储在导航软件中的数据采用二进制方式编码
B.语音输入导航软件的过程不需要经过采样、量化与编码
C.软件模仿真人语音播报的声音是数字信号
D.软件通过GPS获得汽车当前位置是数据的加工
【答案】A
【详解】本题考查的是数据采集与编码。A选项正确,因为在计算机系统中,所有数据都是以二进制编码的方式存储和处理的。B选项错误,因为语音输入是模拟信号,需要经过采样、量化和编码步骤转换为数字信号才可处理。C选项错误,因为软件模仿真人语音播报的声音是通过数模转换器将数字信号转成模拟信号来实现的。D选项错误,因为GPS获得汽车当前位置是数据的获取,而不是加工。故选A。
11.使用UltraEdit软件观察字符内码,部分界面如下图所示。
下列说法正确的是( )
A.图中包含5个ASCII字符 B.存储全部字符占用13b的存储空间
C.“6”的内码用二进制表示是00110110 D.“国”有唯一的输入码“guo”
【答案】C
【详解】本题考查字符编码。
A. 图中包含3个ASCII字符,即3个数字。
B. 存储全部字符的内码为13个字节(byte),不是13位(bit)。
C. 由图可知,字符“1”的ASCII内码十六进制是31,则字符“6”的ASCII内码为十六进制的“36”,转换为二进制为“00110110”。
D. “国”字在输入法中可以有多种编码,如拼音输入法、五笔输入法等,因此不唯一。故选C。
12、13.世界卫生组织发布的男性标准体重计算公式为:标准体重(kg)等于身高(cm)减去80,再乘以70%。小吴编写了一个根据身高计算男性标准体重的程序,代码如下面左图所示。在调试过程中程序出错,如下面右图所示,出错的原因是( )
A.变量weight的首字母没有大写
B.第2行代码没有写成“weight=(height-80)×70÷100”
C.第2行的变量height是字符串类型,不能和整数进行减法运算
D.第3行的引号没有用单引号
【答案】C
【详解】本题考查Python程序设计相关内容。分析程序段,input()函数用于提示并获取终端用户输入内容,一般获取的输入内容为字符串类型,所以height是字符串类型,在第2行中,“height-80”表示一个字符串类型数据与一个整型数据进行减法运算,而Python是不支持这种运算的,导致程序出错。ABD选项与程序错误无关。故本题答案是C选项。
13、14.计算机中所有信息的表示都是采用(( )
A.二进制码 B.二维码 C.十进制码 D.八进制
【答案】A
【详解】本题考查的是信息相关知识。在计算机系统中,信息的表示和处理都是基于二进制的。二进制使用0和1两种状态,非常适合计算机的电子电路实现,因此计算机中所有的信息最终都表示成二进制码。故选A。
14、22.用Python编写统计某字母开头的单词个数的程序。程序功能:输入待统计的句子和开头字母,结果显示统计个数。输入要求:句子以“.”结束;单词之间用空格分隔,单词没有缩写或其他特殊形式。程序运行界面如下图所示:
s=input("请输入要统计的句子:")
t=input("请输入开头字母:")
b=len(s);f=True;n=0
for i in range(b):
c=s[i]
if ① :
n=n+1
②
elif c=" "or c==".":
③
else:
f=False
print("以",t,"为开头的单词个数:",n)
为实现上述程序,空格处应填入的代码是( )
A.①f and c==t ②f=False ③f=True B.①f==False and c==t ②f=False ③f=True
C.①c==t ②f=True ③f=False D.①f==True and c=t ②f=True ③f=False
【答案】A
【详解】本题考查python程序设计。A选项正确,该程序的目的是统计输入句子中以特定字母开头的单词个数。s用于存储输入的待统计句子。t用于存储输入的开头字母。b是句子s的长度。f是一个标志变量,用于表示当前是否处于一个单词的开头部分,初始化为True。n用于统计以指定字母开头的单词个数,初始化为0。通过for循环遍历句子中的每个字符:当遇到一个字符c时,需要判断它是否满足以指定字母t开头且当前处于一个单词的开头(由f为True表示)的条件。如果满足,就说明找到了一个以指定字母开头的单词,此时应该将统计个数n加1,并且将f设为False,因为接下来的字符就不再是这个单词的开头了。所以这里的条件判断应该是 f and c==t,满足条件后的操作是n=n+1和f=False。当遇到空格或者句子结束符(.)时,说明一个单词结束了,此时应该将f重新设为 True,表示接下来可能遇到新的单词开头。如果遇到的字符既不满足以指定字母开头且是单词开头的条件,也不是空格或句子结束符,那么就说明当前不在一个以指定字母开头的单词开头部分,将f设为False。所以,本题选择A。
15、23.下列选项是我国自主知识产权的应用系统( )
A.苹果操作系统 B.微软操作系统 C.ChatGPT系统 D.“北斗”导航系统
【答案】D
【详解】本题考查计算机软件。苹果操作系统和微软操作系统分别由美国的苹果公司和微软公司开发,不属于我国自主知识产权的系统。ChatGPT系统由美国OpenAI研发,同样不属于我国自主知识产权的系统。而“北斗”导航系统是我国自主研发的全球卫星导航系统,具有完全自主知识产权。故选D。
29.各大城市设置的“天网监控系统”利用安装在大街小巷的摄像头组成了监控网络,公安机关通过监控平台对城市进行24小时监控。为保障监控工作安全性,工作人员需要手持专用卡片感应认证后方可进入监控室工作。在此系统中,摄像头作为采集图像信息的图像传感器起到了关键的作用,提高了公安发现、抓捕犯罪嫌疑人的能力。下列关于该信息系统的组成与功能的说法,不正确的是( )
A.可通过监控平台进行24小时道路情况的监控
B.监控平台的数据分析结果可以服务于智慧城市
C.监控的视频信息最终保存在摄像头中
D.该系统的组成包括硬件、软件、数据、通信网络和用户
【答案】C
【详解】本题考查信息系统的组成与功能。本题选择C选项,监控的视频信息最终是保存在服务器中,不是保存在摄像头中,因此选项C说法不正确。选项A说法正确,根据题意公安机关通过监控平台对城市进行24小时监控可知。选项B说法正确,根据监控平台收集的数据,如交通流量、人流密度等,对于城市规划、交通管理等方面都有重要的参考价值,因此可以服务于智慧城市的建设和管理。选项D说法正确,一个完整的信息系统通常由硬件(如摄像头、服务器等)、软件(如监控平台软件)、数据(如监控视频、分析结果等)、通信网络(用于数据传输)和用户(如公安机关工作人员)等要素组成。因此,本题选择C。
16、30.下列关于数据和信息的说法,正确的是( )
A.在数据处理的过程中不会有新的信息产生 B.音频和视频不是数据的表现形式
C.单纯的数据本身即使不解释也有意义 D.计算机中的数据表现形式不同,但都以二进制方式存储
【答案】D
【详解】本题考查数据和信息。D选项正确,计算机中的数据表现形式不同,但都以二进制方式存储和处理。因为计算机内部的电路只能识别和处理以 0 和 1 表示的二进制信号,无论是数字、文字、图像、音频还是视频数据,在计算机内部最终都要转换为二进制形式。A选项错误,在数据处理的过程中会产生新的信息。B选项错误,音频和视频是数据的表现形式。C选项错误,单纯的数据本身没有意义,因此本题选择D。
17、31.有Python程序段如下:
def add(n):
if n==1 or n==2:
s=1
else:
s=2*(add(n-1)+add(n-2))
return s
m=5;s=0
for i in range(1,m+1):
s+=add(i)
print(s)
执行该段程序后,输出的值是( )
A.44 B.32 C.16 D.6
【答案】A
【详解】本题考查Python程序执行与调试。
首先分析add函数:
当n等于 1 或 2 时,s被赋值为 1。
当n大于 2 时,s被赋值为2 * (add(n - 1)+add(n - 2))。这是一个递归函数。
然后看主程序部分:
m被赋值为 5,s初始值为 0。
有一个循环
for i in range(1, m + 1),在每次循环中,s会加上add(i)的值。
逐步计算:
当i = 1时,add(1)返回 1,s = s + 1 = 1。
当i = 2时,add(2)返回 1,s = s + 1 = 2。
当i = 3时,add(3)返回2 * (add(2)+add(1)) = 2 * (1+1)=4,s = s + 4= 6。
当i = 4时,add(4)返回2 * (add(3)+add(2)) = 2 * (4+1)=10,s = s + 10 = 16。
当i = 5时,add(5)返回2 * (add(4)+add(3)) = 2 * (10+4)=28,s = s + 28 = 44。
最后,print(s)会输出 44。
故选A。
18、38.下面的程序段实现的功能是( )
n=int(input("输入一个三位数")
n=n//10
n=n%10
if int(n/2)==n/2:
print("偶数")
else:
print("奇数")
A.判断输入的三位数中的个位数的奇偶性
B.判断输入的三位数中的十位数的奇偶性
C.判断输入的三位数中的百位数的奇偶性
D.判断输入的三位数的奇偶性
【答案】B
【详解】本题考查Python程序设计相关内容。分析程序段,经过n=n//10、n=n%10运算后,n值为原三位数中的十位数,若int(n/2)==n/2成立表示该数为偶数,否则为奇数,即该程序段功能是判断输入的三位数中的十位数的奇偶性。故本题答案是B选项。
19、39.2024年暑期(7—8月)全国边检机关共计保障1.1亿人次中外人员出入境,日均177.9万人次,较去年同期增长30.0%,环比5、6月份增长13.0%,结合上述材料,下列说法不正确的是( )
A.材料中体现的数据类型有文字和数字 B.材料中的数据对所有人价值都很高
C.该材料可以被共享 D.该材料可以被传递
【答案】B
【详解】本题考查对数据的理解。数据是客观普遍存在的,文字、数字、音频、视频、图像等都可以是数据的记录形式,数据可以被传递与共享。但同样的数据,对不同的人来说,使用的时间不一样、处理的方式不一样,其蕴含的价值就不同。故本题答案为B。
20、40.有如下Python代码段:
from random import randint
def fun(a,x):
r=0
for i in range(len(a)):
if a[i]% x !=0:
a[r]=a[i]
r+=1
return a[:r]
a=[3,5,16,9,8,5]
t=randint(3,5)
a=fun(a,t)
则运行程序后,a的值不可能是( )
A.[5,16,8,5] B.[3,5,9,5] C.[3,5,16,9] D.[3,16,9,8]
【答案】C
【详解】本题考查自定义函数,随机数。选项C正确,函数fun的功能为从前往后依次遍历列表a,判断当前值是否能被x整除,若不能整除,将当前值依次从索引为0位置开始往后顺序保存在列表中。t为随机函数产生的随机整数,有三种取值可能,分别为3,4,5。t=3时,列表a中不能被3整除的数为5,16,8,5,a[:r]=[5,16,8,5],选项A有可能;t=4时,列表a中不能被4整除的数有3,5,9,5,a[:r]=[3,5,9,5],选项B有可能;当t=5时,列表a中不能被5整除的数有3,16,9,8,a[:r]=[3,16,9,8],选项D有可能;因此,a的值不可能是选项C。
2、 判断题(共10小题,每小题2分,共20分)
判断下列各题的叙述是否正确,正确的在题后面的括号中打“√”错误的打“×”)
21、51.人和自然界中的事物都能提供数据。( )
【答案】正确
【详解】本题主要考查数据的描述。数据是记录客观事物的、可鉴别的符号。人和自然界中的事物都能提供数据,表述正确。
22、52.for循环与while循环任何时候都不可以相互替换。( )
【答案】错误
【详解】本题考查循环。for 循环和 while 循环是两种不同类型的循环结构,它们用于不同的情况,但它们通常可以相互替换。for 循环通常用于已知循环次数的情况,例如遍历一个列表或迭代器中的元素。while 循环通常用于未知循环次数的情况,即当某个条件为真时继续执行循环。在某些情况下,可以使用 for 循环来模拟 while 循环,反之亦然,但这通常需要额外的控制语句。故说法错误。
23、53.循环次数确定,通常使用for语句,也可使用while语句,其中,使用while语句要增加两行代码。( )
【答案】正确
【详解】本题考查循环结构。在循环次数确定的情况下,通常使用for语句更为简洁,但也可以使用while语句来实现。不过使用while语句时,通常需要手动管理循环变量,这包括初始化循环变量和更新循环变量(通常在循环体内),这就增加了两行代码。因此,这句话是正确的。
24、54.数据是经过加工处理的具有意义的数学符号。( )
【答案】错
【详解】本题考查数据的概念
信息是经过加工处理的具有意义的数据。故表述错误
25、55.信息系统的组成结构中,最底层为应用表现层。( )
【答案】错误
【详解】本题主要考查信息系统的组成。信息系统的组成结构中,最底层为基础设施层,故表述错误。
26、56.Python语言的变量名要区分英文字母的大小写。( )
【答案】正确
【详解】本题考查Python。Python语言的变量名是区分英文字母大小写的,这意味着在Python中,变量名var和Var被视为两个不同的变量。故说法正确。
27、57.算法的优劣可以用空间复杂度与时间复杂度来衡量。( )
【答案】正确
【详解】本题考查的是算法相关知识。算法的优劣可以用空间复杂度与时间复杂度来衡量。说法正确。
28、58.在一定程度上,人类社会的发展速度取决于人们感知信息、利用信息的广度和深度
【答案】正确
【详解】本题考查的是信息应用。在一定程度上,人类社会的发展速度取决于人们感知信息、利用信息的广度和深度。题干中的说法正确。
29、59.“天河一号”是我国研制的微型计算机。( )
【答案】错误
【详解】本题考查计算机基础内容。“天河一号”是我国首台运算速度达到每秒2570万亿次的超级计算机。“天河一号”超级计算机由中国国防科技技术大学于2008年开始研制,并部署在位于天津的国家超级计算机中心。故本题答案是:错误。
30、60.下列程序段中,赋值语句 s=s+i 被重复执行了 3 次。( )
s=0
for i in range(3,10,2):
s=s+i
【答案】错误
【详解】本题主要考查Python循环结构的应用。分析程序可知,变量i依次取3、5、7、9,故赋值语句 s=s+i 被重复执行了 4 次,故表述错误。
第Ⅱ卷(非选择题 共40分)
1、 操作题1(10分)
61.完全数是指一个数恰好等于它的正因子(但不包括其本身)之和。例如,6能被1、2和3整除,而这些正因子的和(1+2+3)正好等于6,所以6是一个完全数。请回答下列问题:
(1)由题意可知,整数10是否为完全数 (选填,填字母:A.是/B.不是)。
(2)现编写Python程序判断某数是否为完全数,请在程序中划线处填入合适的代码。
x=int(input("请输入一个数:"))
①
for i in range(1,x//2+1):
if ② :
sum+=i
if ③ :
print("yes")
else:
print("no")
(3)加框处采用的算法是 (选填,填字母:A.枚举算法/B.解析算法)。
【答案】 B sum=0 x%i==0 sum==x A
【详解】本题考查Python程序设计相关内容。结合题目内容,分析程序段,推知:
(1)10的正因子有:1、2、5,这些正因子的和是8,不等于10,所以整数10不是完全数,故本题答案是:B。
(2)sum统计正因子之和,其初值应设置为0,故②处答案是:sum=0。i在[1,x//2+1]范围内,若x能被i整除,则表明i为x的正因子,应执行 sum+=i,故③处答案是:x%i==0。若sum==x成立,表明x为完全数,应执行print("yes"),故④处答案是:sum==x。
(3)解析算法是通过数学公式或逻辑推理来直接计算或推导问题的解。枚举算法通过列举问题所有可能的解,并逐一检查每个解是否满足问题的条件。由算法描述可知,加框处采用的算法是枚举算法,故本题答案是:A。
2、 操作题2(20分)
67.某导弹防御系统包含多个炮台,炮台每发射一枚拦截弹即可拦截一颗来袭导弹。炮台发射拦截弹后需要3秒调整期(导弹来袭和炮台发射拦截弹视为同一时刻,如第2秒拦截,则第2秒到4秒为调整期),调整期内只能拦截比该炮台前次拦截高度更高的导弹。炮台从0开始编号,数量不限,同等情况下编号越小越先拦截。若已开启的炮台均无法拦截,则将开启新的炮台。
文件“data.txt”中存储来袭导弹数据,文件中第一行为来袭导弹总数m,第二行开始每行存储5个导弹信息(最后一行可能不足5个),导弹信息由导弹高度和导弹来袭时间组成,且已按来袭时间升序排序。编写Python程序,读取左图文件中的数据,输出各炮台的拦截数据,如右图所示。
请回答下列问题:
(1)a列表中存储各来袭导弹的拦截时间和拦截高度,其中偶数索引位上的元素表示拦截时间,奇数索引位上的元素表示拦截高度,若a=[4,3,5,8,10,3,18,14,20,13],根据题意,则至少需要开启 个炮台才可以拦截所有导弹。
(2)定义如下readfile(filename)函数,filename为文件名。函数功能是读取文件中的数据存储到列表a中并返回相应值。加框处①代码有误,请修改;请在划线处填入合适代码。
def readfile(filename):
data=open (filename, "r")
m=int (data.readline()) #读取导弹总数
a=[]
for i in range(① ):
line=list(map(int,data.readline().split(","))) #将以逗号分隔的字符转成整型存在列表中
for j in range(0,len(line),2):
a. append(line[j])
a. append(line[j+1])
②
(3)实现上述功能的部分Python程序如下,请在划线③④处填入合适的代码。
data= readfile ("data.txt")
m=len (data)//2
time= [-1]*m
height= [-1]*m
num= 0
for i in range(m):
for j in range(m):
if data [2*i]!=time[j] and data[2*i+1]>height[j] or ③ :
if time [j]==-1:
num+=1
time[j]=data[2*i]
④
print ("炮台"j,"成功拦截导弹", i,"时间为",time [j],"高度为",height [j])
break
print("总计使用炮台个数为", num)
【答案】 2 (m-1)//5+1 return a data [2*i]> = time [j]+3 height [j]= data [2*i+1]
【详解】本题考查的是Python综合应用。
(1)若a=[4,3,5,8,10,3,18,14,20,13],第4秒开启0号炮台;第5秒在调整期内,但高度8>3,不需要开启新炮台;第10秒不在调整期内,不需要开启新炮台;第18不在调整期内,不需要开启新炮台;第20秒在调整期内而且高度比上次拦截高度低,需要开启1号炮台,故至少需要开启2个炮台才可以拦截所有导弹。
(2)文件中第一行为来袭导弹总数m,第二行开始每行存储5个导弹信息,故加框处①代码应改为:(m-1)//5+1;函数功能是读取文件中的数据存储到列表a中并返回相应值,故②处应为:return a。
(3)如果在调整期内而且高度比上次拦截高度低则需要判断需要不需要开启新炮台,故③处为:data [2*i]> = time [j]+3;拦截后要记录拦截时间和高度分别保存在time和height列表中,故④处为:height [j]= data [2*i+1]。
3、 操作题3(10分)
70.以下是计算运动心率的公式:
男性最适宜运动心率=(220-年龄-安静心率)*(60%~80%)+安静心率
女性最适宜运动心率=(210-年龄-安静心率)*(60%~80%)+安静心率
输入年龄、性别、安静心率,计算最适宜的运动心率范围。
age = int(input('请输入年龄:'))
HRrest = int(input('请输入安静心率:'))
gender = input("请输入性别(男/女):")
if gender == ' ':
n = 220
else:
n = 210
low = (n-age-HRrest)*0.6+HRrest
high = (n-age-HRrest)*0.8+HRrest
print('最适宜的心率是:', , '–', )
【答案】 男 low high
【详解】本题考查的是Python选择语句。①由n = 220可知if条件应是男生,故此处应为:男。②最低心率计算在low,最高心率计算在hight中,故此处应为:low。③处是最高心率,故此处应为:hight。
学科网(北京)股份有限公司
$$