内容正文:
高二技术学科练习
注意事项:
1.本题共12页,满分100分,考试时间90分钟。
2.答题前,在答题卡指定区域填写班级、姓名、考场号、座位号及准考证号。
3.所有答案必须写在答题卡上,写在试题上无效。
4.结束后,只需上交答题卡。
第一部分 信息技术(共50分)
一、选择题(本大题共12小题,每小题2分,共24分。在每小题列出的四个选项中,只有一项符合题目要求,不选、多选、错选均不得分)
阅读下列材料,完成下面小题:
某社区搭建智慧养老服务系统,为辖区老人提供健康监测、紧急呼叫、生活服务预约等功能。老人佩戴的智能手环可实时采集心率、血压等生理数据,再经网络上传至社区服务器。服务器基于预设健康阈值分析数据,若出现异常则自动向子女和社区医生手机APP推送预警信息;子女和社区医生也可通过APP查看老人的健康数据趋势;此外,系统搭载AI识别模块,可通过老人家中的摄像头识别老人摔倒、久坐不动等异常行为,并自动触发紧急呼叫。老人还可通过语音指令控制智能手环预约上门理发、家政清洁等服务。
1. 下列关于该系统中数据和信息的说法,正确的是( )
A. 智能手环采集的心率数值是信息,经分析后的健康趋势是数据
B. 同一健康数据在智能手环和手机APP上的表现形式一定相同
C. 健康数据可经汇总分析形成报表,这体现了信息的可加工处理性
D. 老人的运动步数数据的价值不会随着时间的推移发生变化
2. 下列关于该智慧养老服务系统组成的描述,正确的是( )
A. 老人的健康数据均存储在智能手环中
B. 社区服务器是该系统的核心设备,负责数据处理和分析
C. 子女和社区医生的手机APP属于系统软件
D. 智能手环中的心率传感器是系统的输出设备
3. 下列关于该系统安全与防护的做法,不合理的是( )
A. 社区服务器定期备份健康监测数据
B. 为方便管理,子女与社区医生共享同一登录账号
C. 对老人健康档案数据进行加密存储
D. 为社区服务器机房配置UPS不间断电源
4. 智慧养老服务系统中的AI识别模块通过老人家中的摄像头采集视频流,基于深度学习方法识别老人摔倒、久坐不动等异常行为。下列关于该AI识别模块的说法,不正确的是( )
A. 该AI识别模块的实现依赖于对符号的推理和运算
B. 识别结果的可信度与训练样本的多样性密切相关
C. 该识别功能使用了数据驱动的人工智能方法
D. 摄像头光线不足可能导致摔倒识别结果不准确
5. 下列关于智慧养老服务系统网络技术的分析,正确的是( )
A. 智能手环向服务器传输数据无需遵循网络协议
B. 子女通过5G网络使用APP查看数据属于移动通信技术的应用
C. 系统中的数据传输只能采用5G网络
D. 社区服务器必须部署在老人家中才能保证实时响应
6. 老人使用语音指令预约服务时,智能手环采集声音并存储为未经压缩的Wave格式音频文件。下列说法不正确的是( )
A. 声音采集实现了从模拟信号到数字信号的转换
B. 声音采集过程中提高采样频率能提高音频的保真度
C. 为减少网络传输时间,可将Wave格式转换为MP3格式
D. 老人说话声音越响,得到的音频文件存储容量越大
7. 已知 fruit="Strawberry",info={"month":"05","num":"10"},表达式 fruit[2::3] + info["num"]*3的值是( )
A. "rbr101010" B. "tbr101010" C. "rbr30" D. "tbr30"
8. 某客户购买的家用电器价格为t万元,可享受国家节能补贴,补贴标准如下:价格在2万元(不含)以下,补贴0.1万元;价格在2万元(含)至4万元(不含),补贴0.2万元;价格在4万元(含)以上,补贴0.3万元。下列Python程序中,能正确计算实际付款金额p的是( )
A.
B.
C.
D.
p=t-0.1
if t >= 2:
p=t-0.2
elif t >= 4:
p=t-0.3
p=t-0.3
if t < 2:
p=t-0.1
elif t < 4:
p=t-0.2
p=t-0.1
if t >= 4:
p=t-0.3
if t >= 2:
p=t-0.2
p=t-0.3
if t >= 2:
p=t-0.2
else:
p=t-0.1
A. A B. B C. C D. D
9. 一队列队首到队尾的元素依次为 q,i,a,n,t。约定:T 操作是指元素出队后重新入队,Q操作是指元素出队并输出,若经过 TQTTQTQ 操作后,则输出的元素为( )
A. nq B. iqt C. itn D. ita
10. 某栈初始为空,若元素入栈的顺序为“钱”“塘”“联”“盟”“期”“中”“考”,若经过一系列入栈和出栈操作后,栈底到栈顶元素为“塘”“盟”“中”,则第三个出栈元素为( )
A. 考 B. 盟 C. 期 D. 钱
11. 数组元素a[0]~a[n-1]依次存放着n个数据,现需要将第一个元素插入在下标为m(0<=m<=n-1)的位置,例如:n为5,数组a为[7,3,5,6,9],m为3,插入后的a为[3,5,6,7,9]。实现该功能的程序段如下,横线处应填代码为( )
t=a[0]
for i in range(1,m+1):
a[m]=t
A. a[i-1]=a[i] B. a[i+1]=a[i] C. a[i]=a[i-1] D. a[i]=a[i+1]
12. 有如下Python程序:
import random
s1="abcde";s2="12345";res=""
i,j=0,len(s2)-1
while i<=len(s1)-1 and j>=0:
k=random.randint(0,1)
if k==0:
res+=s1[i+k]
i+=1
else:
res+=s2[j-k]
j-=1
print(res)
执行程序后,变量res不可能的是( )
A. ab4c321d5 B. 4a32b1cde C. 5abc321 D. ab4cd3e
二、非选择题(本大题共3题,其中第13题7分,第14题10分,第15题9分,共26分)
13. 某学校有6间社团活动室(编号0~5),每间活动室都安装了智能环境监测系统。系统每5秒钟检测一次各室的人员情况,若有人,则打开灯光和空调;若无人,则关闭灯光并记录连续无人的时长,若某室连续无人达到30分钟,则系统会自动关闭该室的空调;一旦活动室有人,该室的连续无人时长重置为0。请回答下列问题:
(1)若某时刻各活动室的人员情况为:[1,0,1,0,0,1](1表示有人,0表示无人),灯光状态为:[1,1,0,0,1,0](1表示打开,0表示关闭),空调状态为[1,1,1,1,1,1](1表示打开,0表示关闭)。若人员情况保持不变,编号为3的活动室,经过30分钟后,空调状态为____(单选,填字母: A.开;B.关)
(2)实现上述功能的部分Python程序如下,请在划线处填入合适的代码。
n=6 #教室数量
light=[0]*n;air=[0] * n
time=[0] * n #连续无人时长
while True:
#获取最新人员情况数据保存到变量people中,代码略
for i in range(n):
if people[i] == 1:
light[i]=1
air[i]=1
①____
else:
②____
time[i] += 5
if time[i] >= 1800:
③____
#输出当前状态,代码略
#延时5秒,代码略
14. 某校图书馆推出了“图书漂流”活动,鼓励学生分享闲置书籍。每本漂流图书都贴有RFID标签,学生借阅时在自助借阅机上登记,系统自动记录借阅信息。数据通过校园网络实时上传至服务器并存储为Excel文件,文件名为“book_drift.xlsx”,部分数据如图a所示:
(1)漂流图书贴有的RFID标签属于____(单选,填字母: A.有源标签;B.无源标签),借阅机中的 RFID 读写器在射频识别过程中属于____(单选,填字母:A.发射端;B.接收端)。
(2)学生通过校园网访问网页查看漂流图书借阅情况,这种网络应用模式属于____(单选,填字母: A.B/S 架构;B.C/S 架构)。
(3)该系统使用过程中需要向服务器发送 GET 请求,获取各类别图书的借阅天数等数据。若某次的借阅书籍 ID 为 B164,借阅天数为 9,已知传输数据时使用的 URL 为:
http://192.168.1.8/data?id=B164&day=9,请在划线处填写合适代码。
@app.route("____ ")
def index():
#获取借阅书籍 ID 及其借阅天数,代码略
(4)现要统计各类别图书的借阅总天数,并按借阅天数降序排序。实现上述功能的部分Python程序如下,请选择合适的代码填入划线处(单选,填字母)。
import pandas as pd
import matplotlib.pyplot as plt
#设置中文字体,防止图表中文显示乱码,代码略
df=pd.read_excel("book_drift.xlsx")
df1=df.groupby("类别",as_index=False)["借阅天数"].①____
df2= ②____
程序中①②处可选的代码有:
A.sum()
B.count()
C.mean()
D.df1.sort_values("借阅天数",ascending=False)
E.df1.sort_values("借阅天数",ascending=True)
(5)在上述基础上,现需使用借阅天数最多的三个类别的数据,绘制柱形图,如图b所示。实现上述功能的部分Python程序如下,请填入选择合适的代码(填字母)。
#绘制柱形图
plt.bar(④ )
plt.title("各类别图书借阅天数统计")
plt.xlabel("图书类别")
plt.ylabel("借阅天数")
plt.show()
方框③处代码为____(多选,填字母)
A.df3=df2.head(3) B.df3=df2.tail(3) C.df3=df2[:2] D.df3=df2[:3]
划线④处代码为____(单选,填字母)
A.df2["类别"],df2["借阅天数"] B.df3.类别,df3.借阅天数
C.df3."类别",df3."借阅天数" D.df2[类别],df2[借阅天数]
15. 小明在完成信息技术试卷过程中发现,同一知识点常融入多种不同的生活情境,导致其难以准确把握,出现较多错题。为提升学习效率,小明决定建立错题本用于记录错题并定期复习。小明根据教材知识点将错题分为m种类型,并依据错题情境为每道错题拟定简单的英文标题。构建错题本时,小明按某错题所属知识点将其归入错题本中对应类型,同一类型内按错题标题升序排列。每周末小明会重做错题本中的题目,并更新错题本的状态。若某道题目能够连续做对3次,则将该题从错题本中移除。
标题
错题出处
类型
做对次数
light
校本练习(一)13
0
1
temperature
校本练习(三)14
0
2
classroom
校本练习(六)13
1
1
library
校本练习(十)14
1
2
(1)某个周末,小明的错题本状态如上表所示。小明重做错题本并做对一道类型为1,标题为“library”的错题后,错题本中1类型的错题数量为____(单选,填字母: A.1;B.2)
(2)build(data)函数实现将错题 data 按要求加入错题本的过程。实现该功能的程序如下,请在划线处填入合适的代码。
def build(data):
for item in data:
book.append(item)
n= len(book)
if head[item[2]] == -1:
head[item[2]]=n-1
else:
p=q=head[item[2]]
while ①____:
p=q
q=book[q][4]
if q == head[item[2]]:
book[n-1][4]=head[item[2]]
head[item[2]]=n-1
else:
book[p][4]=n-1
②____
return head,book
(3)update(title,locate,type,flag)函数实现将输入一道错题信息(题目信息确保正确无误)后,错题本更新的过程。实现该功能的程序如下,请在划线处填入合适的代码。
def update(title,locate,type,flag):
p=q=head[type]
while book[q][0] != title:
p=q
q=book[q][4]
if flag:
book[q][3] += 1
else:
③____
if book[q][3] == 3:
if q == head[type]:
④____
else:
book[p][4]=book[q][4]
return head,book
'''
读取错题数据,存入列表data汇总,列表元素包含5个数据项,分别为标题、错题位置、类型、做对次数,指针,如data=[['light','校本练习(一)13',0,0,-1],['temperature','校本练习(三)14',0,0,-1],['classroom','校本练习(六)13',1,0,-1],['library','校本练习(十)14',1,0,-1],……],数据读取存入的代码略。
'''
m=2
head=[-1]*m
book=[]
head,book=build(data)
while True:
title=input("请输入题目标题(若标题为-1 则结束):")
if title == "-1":
break
locate=input("请输入题目位置:")
type=int(input("请输入题目类型(用数字表示):"))
flag=input("请输入题目是否正确(True 表示正确,False 表示错误):")
head,book=update(title,locate,type,flag)
第1页/共1页
学科网(北京)股份有限公司
$
高二技术学科练习
注意事项:
1.本题共12页,满分100分,考试时间90分钟。
2.答题前,在答题卡指定区域填写班级、姓名、考场号、座位号及准考证号。
3.所有答案必须写在答题卡上,写在试题上无效。
4.结束后,只需上交答题卡。
第一部分 信息技术(共50分)
一、选择题(本大题共12小题,每小题2分,共24分。在每小题列出的四个选项中,只有一项符合题目要求,不选、多选、错选均不得分)
阅读下列材料,完成下面小题:
某社区搭建智慧养老服务系统,为辖区老人提供健康监测、紧急呼叫、生活服务预约等功能。老人佩戴的智能手环可实时采集心率、血压等生理数据,再经网络上传至社区服务器。服务器基于预设健康阈值分析数据,若出现异常则自动向子女和社区医生手机APP推送预警信息;子女和社区医生也可通过APP查看老人的健康数据趋势;此外,系统搭载AI识别模块,可通过老人家中的摄像头识别老人摔倒、久坐不动等异常行为,并自动触发紧急呼叫。老人还可通过语音指令控制智能手环预约上门理发、家政清洁等服务。
1. 下列关于该系统中数据和信息的说法,正确的是( )
A. 智能手环采集的心率数值是信息,经分析后的健康趋势是数据
B. 同一健康数据在智能手环和手机APP上的表现形式一定相同
C. 健康数据可经汇总分析形成报表,这体现了信息的可加工处理性
D. 老人的运动步数数据的价值不会随着时间的推移发生变化
2. 下列关于该智慧养老服务系统组成的描述,正确的是( )
A. 老人的健康数据均存储在智能手环中
B. 社区服务器是该系统的核心设备,负责数据处理和分析
C. 子女和社区医生的手机APP属于系统软件
D. 智能手环中的心率传感器是系统的输出设备
3. 下列关于该系统安全与防护的做法,不合理的是( )
A. 社区服务器定期备份健康监测数据
B. 为方便管理,子女与社区医生共享同一登录账号
C. 对老人健康档案数据进行加密存储
D. 为社区服务器机房配置UPS不间断电源
4. 智慧养老服务系统中的AI识别模块通过老人家中的摄像头采集视频流,基于深度学习方法识别老人摔倒、久坐不动等异常行为。下列关于该AI识别模块的说法,不正确的是( )
A. 该AI识别模块的实现依赖于对符号的推理和运算
B. 识别结果的可信度与训练样本的多样性密切相关
C. 该识别功能使用了数据驱动的人工智能方法
D. 摄像头光线不足可能导致摔倒识别结果不准确
5. 下列关于智慧养老服务系统网络技术的分析,正确的是( )
A. 智能手环向服务器传输数据无需遵循网络协议
B. 子女通过5G网络使用APP查看数据属于移动通信技术的应用
C. 系统中的数据传输只能采用5G网络
D. 社区服务器必须部署在老人家中才能保证实时响应
6. 老人使用语音指令预约服务时,智能手环采集声音并存储为未经压缩的Wave格式音频文件。下列说法不正确的是( )
A. 声音采集实现了从模拟信号到数字信号的转换
B. 声音采集过程中提高采样频率能提高音频的保真度
C. 为减少网络传输时间,可将Wave格式转换为MP3格式
D. 老人说话声音越响,得到的音频文件存储容量越大
【答案】1. C 2. B 3. B 4. A 5. B 6. D
【解析】
【1题详解】
本题考查数据与信息的概念,A选项错误,智能手环采集的心率数值是数据,经分析后的健康趋势是信息。B选项错误,同一健康数据在不同设备上的表现形式可以不同。C选项正确,健康数据可汇总分析形成报表,体现了信息的可加工处理性。D选项错误,老人的运动步数数据会随时间推移降低价值。因此本题选择C选项。
【2题详解】
本题考查信息系统组成,A选项错误,老人健康数据主要存储在社区服务器中,并非均在手环。B选项正确,社区服务器是系统核心,负责数据处理、分析与调度。C选项错误,手机APP属于应用软件,并非系统软件。D选项错误,心率传感器属于输入设备,用于采集数据。因此本题选择B选项。
【3题详解】
本题考查信息系统安全与防护,A选项合理,定期备份数据可防止数据丢失。B选项不合理,多人共用账号存在安全隐患,易造成信息泄露与越权操作。C选项合理,加密存储健康档案可保护隐私。D选项合理,UPS不间断电源可保障服务器断电后正常运行。因此本题选择B选项。
【4题详解】
本题考查人工智能应用,A选项错误,该模块基于深度学习,是数据驱动方式,不依赖符号推理。B选项正确,训练样本越多样,识别可信度越高。C选项正确,该功能依靠大量数据训练,属于数据驱动的人工智能方法。D选项正确,光线不足会影响画面质量,导致识别结果不准确。因此本题选择A选项。
【5题详解】
本题考查网络技术应用,A选项错误,网络数据传输必须遵循统一的网络协议。B选项正确,5G网络属于移动通信技术,用于APP查看数据。C选项错误,系统可使用多种网络传输数据,并非只能用5G。D选项错误,服务器可部署在机房等专业场所,无需放在老人家中。因此本题选择B选项。
【6题详解】
本题考查音频数字化,A选项正确,声音采集是将模拟信号转为数字信号。B选项正确,提高采样频率能提升音频保真度。C选项正确,MP3是压缩格式,可减小文件大小,缩短传输时间。D选项错误,音频存储容量与采样频率、量化位数、声道数有关,与声音响度无关。因此本题选择D选项。
7. 已知 fruit="Strawberry",info={"month":"05","num":"10"},表达式 fruit[2::3] + info["num"]*3的值是( )
A. "rbr101010" B. "tbr101010" C. "rbr30" D. "tbr30"
【答案】A
【解析】
【详解】本题考查Python字符串切片与字符串拼接运算。fruit=“Strawberry”,fruit[2::3]表示从下标2开始,步长为3取字符,Strawberry下标2为r,后续依次取下标5、8,得到rbr;info["num"]为“10”,“10”*3得到“101010”,拼接后结果为“rbr101010”。因此,本题选择A选项。
8. 某客户购买的家用电器价格为t万元,可享受国家节能补贴,补贴标准如下:价格在2万元(不含)以下,补贴0.1万元;价格在2万元(含)至4万元(不含),补贴0.2万元;价格在4万元(含)以上,补贴0.3万元。下列Python程序中,能正确计算实际付款金额p的是( )
A.
B.
C.
D.
p=t-0.1
if t >= 2:
p=t-0.2
elif t >= 4:
p=t-0.3
p=t-0.3
if t < 2:
p=t-0.1
elif t < 4:
p=t-0.2
p=t-0.1
if t >= 4:
p=t-0.3
if t >= 2:
p=t-0.2
p=t-0.3
if t >= 2:
p=t-0.2
else:
p=t-0.1
A. A B. B C. C D. D
【答案】B
【解析】
【详解】本题考查Python多分支条件语句的逻辑判断,A选项错误,条件判断顺序错误,先判断t>=2会导致t>=4的情况无法执行,逻辑混乱。B选项正确,先默认高补贴,再依次判断t<2和t<4,条件覆盖完整且顺序正确,能按补贴标准算出正确的p。C选项错误,两个if为并列关系,t>=4时会先执行p=t-0.3,再被t>=2的语句覆盖为p=t-0.2,结果错误。D选项错误,缺少t>=4的条件判断,4万元及以上的补贴无法正确计算。因此本题选择B选项。
9. 一队列队首到队尾的元素依次为 q,i,a,n,t。约定:T 操作是指元素出队后重新入队,Q操作是指元素出队并输出,若经过 TQTTQTQ 操作后,则输出的元素为( )
A. nq B. iqt C. itn D. ita
【答案】D
【解析】
【详解】本题考查队列的基本操作与应用。队列初始从队首到队尾依次为q,i,a,n,t,操作序列为TQTTQTQ,1.T:q出队再入队,队列变为i,a,n,t,q;2.Q:i出队输出,第一个输出i;3.T:a出队再入队,队列变为n,t,q,a;4.T:n出队再入队,队列变为t,q,a,n;5.Q:t出队输出,第二个输出t;6.T:q出队再入队,队列变为a,n,q;7.Q:a出队输出,第三个输出a,输出依次为i,t,a,对应ita。因此,本题选择D选项。
10. 某栈初始为空,若元素入栈的顺序为“钱”“塘”“联”“盟”“期”“中”“考”,若经过一系列入栈和出栈操作后,栈底到栈顶元素为“塘”“盟”“中”,则第三个出栈元素为( )
A. 考 B. 盟 C. 期 D. 钱
【答案】C
【解析】
【详解】本题考查栈的入栈出栈顺序推理。入栈顺序固定为:钱、塘、联、盟、期、中、考。栈底到栈顶最终为“塘”“盟”“中”,说明“塘”在栈底,“盟”在中间,“中”在栈顶。根据入栈顺序:先入“钱”,但最终栈底是“塘”,说明“钱”必须先出栈。入“塘”后,接着入“联”,但栈中“塘”之上是“盟”,说明“联”必须出栈后才能入“盟”。入“盟”后,又入了“期”,但栈顶现在是“中”,说明“期”必须出栈。出栈顺序推断:第一个出栈为“钱”,第二个出栈为“联”,第三个出栈为“期”。因此第三个出栈元素是“期”。本题选择C选项。
11. 数组元素a[0]~a[n-1]依次存放着n个数据,现需要将第一个元素插入在下标为m(0<=m<=n-1)的位置,例如:n为5,数组a为[7,3,5,6,9],m为3,插入后的a为[3,5,6,7,9]。实现该功能的程序段如下,横线处应填代码为( )
t=a[0]
for i in range(1,m+1):
a[m]=t
A. a[i-1]=a[i] B. a[i+1]=a[i] C. a[i]=a[i-1] D. a[i]=a[i+1]
【答案】A
【解析】
【详解】本题考查数组元素的移动与插入操作。题目要求将第一个元素插入到下标m的位置,需要先把a[1]到a[m]的元素依次向前移动一位,循环中i从1到m,应将后一位元素赋给前一位,即a[i-1]=a[i],完成移动后再将原第一个元素存入a[m]。因此,本题选择A选项。
12. 有如下Python程序:
import random
s1="abcde";s2="12345";res=""
i,j=0,len(s2)-1
while i<=len(s1)-1 and j>=0:
k=random.randint(0,1)
if k==0:
res+=s1[i+k]
i+=1
else:
res+=s2[j-k]
j-=1
print(res)
执行程序后,变量res不可能的是( )
A. ab4c321d5 B. 4a32b1cde C. 5abc321 D. ab4cd3e
【答案】C
【解析】
【详解】本题考查Python程序。i、j双指针分别从前往后、从后往前遍历s1、s2两个字符串;若随机数k=0,则从s1字符串中取,若k=1,则从s2字符串中取,即取s2[j-1]不为5,所以res字符串首个字符不可能为5。故答案为:C。
二、非选择题(本大题共3题,其中第13题7分,第14题10分,第15题9分,共26分)
13. 某学校有6间社团活动室(编号0~5),每间活动室都安装了智能环境监测系统。系统每5秒钟检测一次各室的人员情况,若有人,则打开灯光和空调;若无人,则关闭灯光并记录连续无人的时长,若某室连续无人达到30分钟,则系统会自动关闭该室的空调;一旦活动室有人,该室的连续无人时长重置为0。请回答下列问题:
(1)若某时刻各活动室的人员情况为:[1,0,1,0,0,1](1表示有人,0表示无人),灯光状态为:[1,1,0,0,1,0](1表示打开,0表示关闭),空调状态为[1,1,1,1,1,1](1表示打开,0表示关闭)。若人员情况保持不变,编号为3的活动室,经过30分钟后,空调状态为____(单选,填字母: A.开;B.关)
(2)实现上述功能的部分Python程序如下,请在划线处填入合适的代码。
n=6 #教室数量
light=[0]*n;air=[0] * n
time=[0] * n #连续无人时长
while True:
#获取最新人员情况数据保存到变量people中,代码略
for i in range(n):
if people[i] == 1:
light[i]=1
air[i]=1
①____
else:
②____
time[i] += 5
if time[i] >= 1800:
③____
#输出当前状态,代码略
#延时5秒,代码略
【答案】(1)B (2) ①. time[i]=0 ②. light[i]=0 ③. air[i]=0
【解析】
【详解】本题考查循环遍历、条件分支与状态计时控制逻辑,通过遍历社团活动室的人员状态,按照规则自动控制灯光、空调,并累计连续无人时长实现智能节能控制。 (1)首先判断单选问题:编号3的活动室初始状态为无人,且人员情况保持不变,系统每5秒累计一次无人时长,连续无人达到30分钟(1800秒)自动关闭空调,因此30分钟后空调状态为关,答案选B。
(2)①处处理有人状态的无人时长,该处当活动室检测到有人时,需要将连续无人时长重置为0,符合题目中“一旦活动室有人,该室的连续无人时长重置为0”的规则,因此该空答案为time[i]=0。②处处理无人状态的灯光控制,该处当活动室无人时,需要关闭灯光,符合题目中“若无人,则关闭灯光”的规则,因此该空答案为light[i]=0。③处处理超时无人的空调控制,该处当连续无人时长达到30分钟(1800秒)时,需要关闭空调,符合题目中“若某室连续无人达到30分钟,则系统会自动关闭该室的空调”的规则,因此该空答案为air[i]=0。
14. 某校图书馆推出了“图书漂流”活动,鼓励学生分享闲置书籍。每本漂流图书都贴有RFID标签,学生借阅时在自助借阅机上登记,系统自动记录借阅信息。数据通过校园网络实时上传至服务器并存储为Excel文件,文件名为“book_drift.xlsx”,部分数据如图a所示:
(1)漂流图书贴有的RFID标签属于____(单选,填字母: A.有源标签;B.无源标签),借阅机中的 RFID 读写器在射频识别过程中属于____(单选,填字母:A.发射端;B.接收端)。
(2)学生通过校园网访问网页查看漂流图书借阅情况,这种网络应用模式属于____(单选,填字母: A.B/S 架构;B.C/S 架构)。
(3)该系统使用过程中需要向服务器发送 GET 请求,获取各类别图书的借阅天数等数据。若某次的借阅书籍 ID 为 B164,借阅天数为 9,已知传输数据时使用的 URL 为:
http://192.168.1.8/data?id=B164&day=9,请在划线处填写合适代码。
@app.route("____ ")
def index():
#获取借阅书籍 ID 及其借阅天数,代码略
(4)现要统计各类别图书的借阅总天数,并按借阅天数降序排序。实现上述功能的部分Python程序如下,请选择合适的代码填入划线处(单选,填字母)。
import pandas as pd
import matplotlib.pyplot as plt
#设置中文字体,防止图表中文显示乱码,代码略
df=pd.read_excel("book_drift.xlsx")
df1=df.groupby("类别",as_index=False)["借阅天数"].①____
df2= ②____
程序中①②处可选的代码有:
A.sum()
B.count()
C.mean()
D.df1.sort_values("借阅天数",ascending=False)
E.df1.sort_values("借阅天数",ascending=True)
(5)在上述基础上,现需使用借阅天数最多的三个类别的数据,绘制柱形图,如图b所示。实现上述功能的部分Python程序如下,请填入选择合适的代码(填字母)。
#绘制柱形图
plt.bar(④ )
plt.title("各类别图书借阅天数统计")
plt.xlabel("图书类别")
plt.ylabel("借阅天数")
plt.show()
方框③处代码为____(多选,填字母)
A.df3=df2.head(3) B.df3=df2.tail(3) C.df3=df2[:2] D.df3=df2[:3]
划线④处代码为____(单选,填字母)
A.df2["类别"],df2["借阅天数"] B.df3.类别,df3.借阅天数
C.df3."类别",df3."借阅天数" D.df2[类别],df2[借阅天数]
【答案】(1) ①. B ②. B
(2)A (3)/data
(4) ①. A ②. D
(5) ①. AD ②. B
【解析】
【详解】本题考查RFID技术、网络架构、Web路由与Python数据分析可视化综合应用。
(1)漂流图书贴有的RFID标签,无需内置电池供电,依靠读写器的射频能量工作,属于无源标签,对应选项B;借阅机中的RFID读写器在射频识别过程中接受标签信息,属于接收端,对应选项B。
(2)学生通过浏览器访问网页查看数据,客户端无需安装专用软件,这种网络应用模式属于B/S架构,对应选项A。
(3)GET请求的URL为http://192.168.1.8/data?id=B164&day=9,其中路由路径为/data,因此@app.route的参数应为/data。
(4)①处统计各类别图书的借阅总天数,需对“借阅天数”列按类别分组求和,对应选项A.sum();②处需按借阅天数降序排序,对应选项D.df1.sort_values("借阅天数",ascending=False)。
(5)方框③处需获取借阅天数最多的三个类别数据,head(3)可直接取排序后的前3条,切片df2[:3]也等价于取前3条,对应选项A、D;划线④处绘制柱形图,需传入筛选后的df3的类别和借阅天数数据,对应选项B.df3.类别,df3.借阅天数。
15. 小明在完成信息技术试卷过程中发现,同一知识点常融入多种不同的生活情境,导致其难以准确把握,出现较多错题。为提升学习效率,小明决定建立错题本用于记录错题并定期复习。小明根据教材知识点将错题分为m种类型,并依据错题情境为每道错题拟定简单的英文标题。构建错题本时,小明按某错题所属知识点将其归入错题本中对应类型,同一类型内按错题标题升序排列。每周末小明会重做错题本中的题目,并更新错题本的状态。若某道题目能够连续做对3次,则将该题从错题本中移除。
标题
错题出处
类型
做对次数
light
校本练习(一)13
0
1
temperature
校本练习(三)14
0
2
classroom
校本练习(六)13
1
1
library
校本练习(十)14
1
2
(1)某个周末,小明的错题本状态如上表所示。小明重做错题本并做对一道类型为1,标题为“library”的错题后,错题本中1类型的错题数量为____(单选,填字母: A.1;B.2)
(2)build(data)函数实现将错题 data 按要求加入错题本的过程。实现该功能的程序如下,请在划线处填入合适的代码。
def build(data):
for item in data:
book.append(item)
n= len(book)
if head[item[2]] == -1:
head[item[2]]=n-1
else:
p=q=head[item[2]]
while ①____:
p=q
q=book[q][4]
if q == head[item[2]]:
book[n-1][4]=head[item[2]]
head[item[2]]=n-1
else:
book[p][4]=n-1
②____
return head,book
(3)update(title,locate,type,flag)函数实现将输入一道错题信息(题目信息确保正确无误)后,错题本更新的过程。实现该功能的程序如下,请在划线处填入合适的代码。
def update(title,locate,type,flag):
p=q=head[type]
while book[q][0] != title:
p=q
q=book[q][4]
if flag:
book[q][3] += 1
else:
③____
if book[q][3] == 3:
if q == head[type]:
④____
else:
book[p][4]=book[q][4]
return head,book
'''
读取错题数据,存入列表data汇总,列表元素包含5个数据项,分别为标题、错题位置、类型、做对次数,指针,如data=[['light','校本练习(一)13',0,0,-1],['temperature','校本练习(三)14',0,0,-1],['classroom','校本练习(六)13',1,0,-1],['library','校本练习(十)14',1,0,-1],……],数据读取存入的代码略。
'''
m=2
head=[-1]*m
book=[]
head,book=build(data)
while True:
title=input("请输入题目标题(若标题为-1 则结束):")
if title == "-1":
break
locate=input("请输入题目位置:")
type=int(input("请输入题目类型(用数字表示):"))
flag=input("请输入题目是否正确(True 表示正确,False 表示错误):")
head,book=update(title,locate,type,flag)
【答案】(1)A (2) ①. q != -1 and item[0] > book[q][0] 或 q != -1 and item[0] >= book[q][0] 或其他等价答案( ②. book[n-1][4]=q 或其他等价答案
(3) ①. book[q][3]=0 ②. head[type]=book[q][4] 或 head[type]=book[head[type]][4] 或其他等价答案
【解析】
【详解】本题考查静态链表的插入与删除操作,通过列表模拟链表结构实现错题按类型分类、同类型按标题升序插入,以及连续做对3次移除错题的功能,重点考查链表插入排序、节点修改、节点删除的逻辑实现。
(1)选择题答案判断,该处初始类型1包含classroom(做对1次)、library(做对2次),重做library并做对后,其做对次数变为3次,按规则从错题本移除,类型1仅剩classroom一道题,因此该空答案为A。
(2)①处代码填空,该处为链表遍历查找插入位置,需满足未遍历到链表末尾且当前节点标题小于待插入题目标题,保证按标题升序插入,因此该空答案为q != -1 and book[q][0] < item[0]。 ②处代码填空,该处为链表中间插入节点,新节点需指向原后继节点q,完成链表插入的指针绑定,因此该空答案为book[n-1][4] = q。 (3)③处代码填空,该处为题目重做错误时,连续做对次数需重置为0,重新开始计数,因此该空答案为book[q][3] = 0。 ④处代码填空,该处为删除链表头节点,直接将该类型头指针指向头节点的下一个节点,完成头节点删除,因此该空答案为head[type] = book[q][4]。
第1页/共1页
学科网(北京)股份有限公司
$