内容正文:
2025学年第二学期高二年级学业质量阶段调研
技术
注意事项:
1.本卷满分100分,考试时间90分钟;
2.答题前,在答题卷指定区域填写班级、姓名、考场、座位号及准考证号并核对条形码信息;
3.答题时,请按照答题纸上“注意事项”的要求,在答题纸相应的位置上规范作答,在本试卷上的作答一律无效。
第一部分 信息技术(共50分)
一、选择题(本大题共12题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
阅读下列材料,完成下面小题:
某体育健身中心引入了智慧跑道系统,该系统集成了多种传感器,可以准确地采集用户的运动数据,
如速度、心率、脚步频率等,数据存储在系统服务器的数据库中。注册用户可以通过手机APP随时查看自
己的运动数据。系统还会根据用户的运动数据,生成个性化的运动建议报告。管理员可通过移动终端APP
查看设备运行状况,还可远程控制摄像头的角度等。
1. 下列关于该系统中数据的说法,正确的是( )
A. 该系统的数据采集都由传感器完成
B. 该系统运行的过程中不会产生新的数据
C. 存储在服务器中的数据都是经过数字化处理的
D. 用户通过手机APP查看后的所有数据都保存在手机上
2. 下列关于该系统组成的描述,正确的是( )
A. 该系统中的智慧跑道软件是应用软件
B. 该系统不需要网络即可完成数据传输
C. 摄像头和数据库均属于该系统的硬件
D. 该系统的用户仅为注册用户和系统管理员
3. 下列关于该系统功能与应用的描述,正确的是( )
A. 使用该系统时不存在数字鸿沟问题
B. 该系统对外部环境没有依赖
C. 所有用户都能查看数据库中的全部数据
D. 该系统具有数据采集、处理和存储等功能
4. 下列有关该系统安全与防护的说法,合理的是( )
A. 未经用户允许,将用户信息发布在微信朋友圈
B. 对系统的管理员和普通用户设置相同的访问权限
C. 系统每天定时备份数据,是保护数据安全的重要措施
D. 只要服务器安装了杀毒软件,就可以保证数据的安全
5. 下列关于该系统网络技术的分析,正确的是( )
A. 计算机终端访问服务器不需要网络协议
B. 网络中的数据通信必须依靠传输介质来完成
C. 该系统的网络资源是指网络中的所有软件资源
D. 用户手机只能通过移动通信网络才能访问该系统
【答案】1. C 2. A 3. D 4. C 5. B
【解析】
【1题详解】
本题考查智慧跑道信息系统数据相关知识。A选项错误,系统数据采集并非全部由传感器完成,还有用户注册信息等人工录入数据;B选项错误,系统会生成运动建议报告等,运行中会产生新数据;C选项正确,计算机服务器只能存储数字化处理后的信息;D选项错误,APP查看数据多为在线调取服务器数据,不会全部保存在手机本地。因此,本题选择C选项。
【2题详解】
本题考查信息系统组成相关知识。A选项正确,智慧跑道软件为满足健身管理特定需求开发,属于应用软件;B选项错误,手机APP查看数据、远程管理设备都需要网络传输数据;C选项错误,摄像头是硬件,数据库属于软件资源;D选项错误,系统用户还包含健身中心工作人员等相关使用人员。因此,本题选择A选项。
【3题详解】
本题考查信息系统功能与应用相关知识。A选项错误,老年人不会使用APP等情况会存在数字鸿沟问题;B选项错误,系统依赖传感器、网络、服务器等外部环境支撑运行;C选项错误,不同用户权限不同,无法查看数据库全部数据;D选项正确,系统可采集运动数据、处理分析数据、在服务器存储数据,具备对应完整功能。因此,本题选择D选项。
【4题详解】
本题考查信息系统安全与防护相关知识。A选项错误,私自泄露发布用户信息属于侵犯隐私,行为不合理;B选项错误,管理员与普通用户职责不同,需设置不同访问权限保障安全;C选项正确,定时备份数据可防止数据丢失,是保护数据安全的有效措施;D选项错误,仅安装杀毒软件无法完全保证数据安全,还需权限管理、加密等多种防护手段。因此,本题选择C选项。
【5题详解】
本题考查网络技术应用相关知识。A选项错误,终端访问服务器必须遵循网络协议才能正常通信;B选项正确,网络数据通信需要网线、无线电波等传输介质作为载体完成;C选项错误,网络资源包含硬件资源、软件资源和数据资源,并非只有软件;D选项错误,手机也可通过无线网络、局域网访问该系统,不局限于移动通信网络。因此,本题选择B选项。
6. 下列有关人工智能的说法,正确的是( )
A. 强化学习方法一般脱离数据进行学习
B. 人工智能的实现都不需要事先手工构造知识库
C. 符号主义人工智能的实现依赖于对符号的推理和运算
D. 跨领域人工智能仅依赖于已有的数据和规则进行深度推理
【答案】C
【解析】
【详解】本题考查人工智能。任何人工智能方法都离不开数据学习,因此A选项错误;符号主义人工智能方法需要事先手工构造知识库,因此B选项错误;跨领域人工智能并不只依赖于已有的数据和规则进行深度推理,而是具备从经验中学习、迁移知识、适应新任务的能力,因此D选项错误;C选项正确,因此答案为C。
7. 将声音传感器采集的声音存储为MP3格式音频文件,下列说法正确的是( )
A. 声音采集实现了从数字信号到模拟信号的转换
B. 提高声音的采样频率一定会提升声音的保真度
C. 为提高音频的音质,可将MP3格式音频转换为Wave格式
D. 将容量为5GB的视频文件上传到服务器,若网络传输速度为750Mbps,大约需要55秒
【答案】D
【解析】
【详解】本题考查声音数字化。声音采集实现了从模拟信号到数字信号的转换,因此A选项错误;在保证其他因素不变的情况下,提高声音的采样频率可能会提升声音的保真度,因此B选项错误;MP3格式的音频是有损压缩过的,再转为为Wave格式,不会提高音频的音质,因此C选项错误;D选项正确(5*1024*8/750=55),因此答案为D。
8. 某算法的部分流程图如图所示,执行这部分流程,若输入y的值为40,则输出s的值是( )
A. -5 B. -1 C. 1 D. 7
【答案】C
【解析】
【详解】本题考查流程图。n=20时,s=6;n=26时,s=6-5=1,因此答案为C。
9. 已知a、b均为小于26的正整数,下列Python程序段中,能实现和语句y=(a+b)%26相同功能的是( )
A.
y=a%26+b%26
B.
if a+b>26:
y=a+b-26
else:
y=a+b
C.
if a+b<26:
y=a+b
else:
y=a+b-26
D.
y=a+b
if y>26:
y=y-26
A. A B. B C. C D. D
【答案】C
【解析】
【详解】本题考分支语句。A选项错误,该代码实现的是a、b分别对26取余后求和,与(a+b)%26运算逻辑不同;B选项错误,条件判断为a+b>26,未包含等于26的情况,运算逻辑不完整;C选项正确,完整覆盖a+b小于26和大于等于26两种情况,计算结果与(a+b)%26完全一致;D选项错误,仅判断y>26时减26,未处理y=26的情况,结果错误。因此,本题选择C选项。
10. 有如下 Python 程序段:
y=tt=0
for i in range(len(a)):
if i%4 != 0:
tt+=a[i]
elif y < tt:
y=tt
tt=0
若列表a为[5,1,2,6,7,3,4,8,2,9,6,8,5,10,15,5],执行该程序段后,y的值为( )
A. 19 B. 23 C. 28 D. 30
【答案】B
【解析】
【详解】本题考查循环语句。本题的实质是求列表a中元素索引值为4的倍数间的连续三个数的最大和,最大和为9+6+8=23,需注意的是最后三个数之和没有记录,因此答案为B。
11. 有如下 Python 程序段:
s="abbcabccb"
ch=s[0]; i=1
while i < len(s):
if len(ch) == 0 or s[i] != ch[0]:
ch=s[i]+ch
else:
ch=ch[1:len(ch)]
i+=1
执行该段代码后,ch的值为( )
A. aca B. aac C. cac D. ccc
【答案】A
【解析】
【详解】本题考查循环语句。本题程序的功能是将当前字符s[i]与字符ch中第一个元素比较,若相同则删除ch中第一个元素,否则将它拼接在字符串ch的最前面,因此答案为A。
12. 有如下Python程序段:
from random import randint
n=6
a=[randint(0,4)*2+1 for i in range(n)]
# randint(a,b),随机生成一个[a,b]范围内的整数
for i in range(2):
j=i+1
while j < n-1:
if i%2 == 0:
if a[j-1] < a[j] and a[j] > a[j+1]:
j+=2
else:
a[j]+=1
else:
if a[j-1] > a[j] and a[j] < a[j+1]:
j+=2
else:
a[j]-=2
运行后,数组a中的值可能的是( )
A. [2,4,3,5,1,3] B. [1,4,3,10,0,3] C. [9,10,3,5,7,5] D. [3,10,9,10,5,7]
【答案】D
【解析】
【详解】本题主要考查的是数组的综合应用。数组a中初始值为1-9之间的奇数,当i为0(偶数)时,j为1,若奇数位置上的数比前后相邻两个数都要大,则j+2,否则a[j]更改为a[j]+1,即变为偶数;当i为1(奇数)时,j为2,若偶数位置上的数比前后相邻两个数都要小,则j+2,否则a[j]更改为a[j]-2,即仍为奇数。A选项中,第1个数不可能为偶数,因此A选项错误;B选项中的0不可能,应该是个奇数,因此B选项错误;C选项中的7不可能,该位置上的数比左右两个数都要小,因此C选项错误;D选项正确,故答案为D。
二、非选择题(本大题共3小题,其中第13小题8分,第14小题9分,第15小题9分,共26分)
13. 某小组模拟搭建“噪声检测系统”,采集某小区多个区域的噪声数据,用于环境检测。采用智能终端连接声音传感器,每5分钟采集一次噪声数据,并通过无线通信方式将数据上传至服务器并存储在数据库中。服务器检测到噪声数据超过设定阈值时,向管理员手机发送预警信息,并通过智能终端控制蜂鸣器报警。管理员通过浏览器可查看系统数据。请回答下列问题:
(1)该系统中的蜂鸣器属于____(单选,填字母: A.传感器/B.执行器)
(2)一个智能终端 (单选)
A. 可以同时连接传感器和执行器 B. 不可以同时连接传感器和执行器
(3)下列操作可由智能终端完成的是 (单选,填字母)
A. 控制蜂鸣器响起
B. 向管理员手机发送预警信息
C. 将噪声数据存储在数据库中
(4)下列关于该系统的说法,正确的有 (多选,填字母)
A. 噪声传感器属于该系统的输出设备
B. 智能终端和服务器之间的通信是双向的
C. 传感器和智能终端只能通过有线方式通信
D. 可通过设置传感器的编号区分噪声数据所在的区域
(5)某区域声音吵杂,现场测得的噪声数据超过设定阈值,但蜂鸣器却未报警,请分析可能造成上述问题的原因。(写出两个原因)
【答案】(1)B (2)A (3)A (4)BD
(5)蜂鸣器故障 或 传感器故障 或 蜂鸣器和智能终端连接故障 或 智能终端程序错误 或 其他等效答案
【解析】
【详解】本题考查噪声检测系统的组成、设备功能及系统故障分析,涉及传感器、执行器的区分,智能终端的功能,系统通信方式及故障排查等核心知识点,通过结合题干中系统的工作流程,逐一分析各问题的考查重点和解题思路。
(1)该系统中的蜂鸣器属于B(执行器)。该处考查传感器与执行器的核心区别,传感器的核心功能是采集外界环境中的物理量(如本题中的噪声数据),将物理信号转换为电信号供系统处理;而执行器的核心功能是接收系统的控制指令,将电信号转换为具体的物理动作,实现系统的控制需求。题干中蜂鸣器是在接收智能终端的控制指令后,发出报警声音,完成报警动作,符合执行器的定义,因此该空答案为B。
(2)一个智能终端可以同时连接传感器和执行器。该处考查智能终端在系统中的核心作用,智能终端作为系统的本地核心设备,具备数据采集和设备控制的双重功能,其设计时预留了相应的接口,能够同时接入用于采集噪声数据的声音传感器和用于执行报警动作的蜂鸣器(执行器),一方面接收传感器传输的噪声数据,另一方面将服务器下发的控制指令传递给蜂鸣器,实现数据采集与设备控制的协同工作,因此答案为A。
(3)下列操作可由智能终端完成的是控制蜂鸣器响起。该处考查系统中各设备的功能分工,题干明确说明,智能终端连接声音传感器采集数据,并通过无线通信将数据上传至服务器,同时当服务器检测到数据超阈值时,智能终端会接收服务器的指令,控制蜂鸣器报警;而向管理员手机发送预警信息是服务器的功能,将噪声数据存储在数据库中也是服务器的功能,均与智能终端无关,因此该空答案为A。
(4)下列关于该系统的说法,正确的有BD。该处考查系统的组成、通信方式及数据区分方法,逐一分析各选项:A选项错误,噪声传感器的功能是采集噪声数据,将外界的声音信号转换为电信号传输给智能终端,属于系统的输入设备,而非输出设备;B选项正确,智能终端需要将采集到的噪声数据上传至服务器,同时服务器检测到数据超阈值时,会向智能终端下发控制蜂鸣器报警的指令,因此智能终端和服务器之间的通信是双向的;C选项错误,题干明确说明“通过无线通信方式将数据上传至服务器”,说明智能终端与服务器之间采用无线通信,且传感器与智能终端的连接也可采用无线方式,并非只能通过有线通信;D选项正确,由于系统采集的是小区多个区域的噪声数据,给每个区域的传感器设置唯一的编号,在上传数据时同步上传传感器编号,服务器即可通过编号区分不同区域的噪声数据,因此正确选项为BD。
(5)某区域声音嘈杂,现场测得的噪声数据超过设定阈值,但蜂鸣器却未报警,可能造成该问题的原因有:蜂鸣器故障 或 传感器故障 或 蜂鸣器和智能终端连接故障 或 智能终端程序错误 或 其他等效答案。
14. 下载区域编号为02的噪声数据,并进行整理。选取2026年2月1日至7日6:00~18:00的噪声数据(每5分钟采集一次噪声数据),并存储在“noise.xlsx”文件中,部分数据如图1所示(时间格式为“时:分:秒”,噪声单位为“分贝”),现对文件中的数据进行处理和分析。
图1 图2
请回答下列问题:
(1)统计每天噪声大于55分贝的次数,并输出次数最多的前3天数据,编写程序运行后结果如图2所示。实现上述功能的部分Python程序如下所示,请选择合适的代码填入划线处(单选)。
import pandas as pd
df=pd.read_excel("noise.xlsx") # 读取文件中的数据
df1= ①____
df2= ②____
df2=df2.rename(columns={"噪声":"次数"}) # 重命名 df2 中“噪声”列名称为“次数”
df3= ③____
df4=df3.head(3)
print(df4)
程序中①②③处可选的代码有:
A.df[df.噪声>55]
B.df[df[噪声]>55]
C.df1.groupby("日期",as_index=False).count()
D.df1.groupby("日期",as_index=False).sum()
E.df2.sort_values("次数")
F.df2.sort_values("次数",ascending=False)
(2)噪声低于 40 分贝是理想的安静环境,为了统计出 7 天中“理想安静环境”的最长持续时间(每5分钟采集一次噪声数据,采集过程中无数据缺失,最长持续时间仅限单日不跨天),编写了如下Python程序,在程序中的①②划线处填入合适的代码。
# 将2026年2月1日至7日的噪声数据存储在数组data中,代码略
n=len(data)
①____
ans=0
for i in range(7):
②____
cnt=0
for j in range(pos,pos+k):
if data[j] <= 40:
cnt+=1
elif cnt > ans:
ans=cnt
③____
if cnt > ans:
ans=cnt
print((ans-1)*5,"分钟")
【答案】(1) ①. A ②. C ③. F
(2) ①. k=n/7或k=n//7 ②. pos=i*k ③. cnt=0
【解析】
【详解】本题考查pandas数据分析。
(1)①处数据筛选,代码为df[df.噪声>55]即A选项;②处为分组统计次数而非求和,因此代码为df1.groupby("日期",as_index=False).count()即C选项;③处为降序排序,因此代码为f2.sort_values("次数",ascending=False)即F选项;
(2)k表示每天的数据个数,因此①处代码为k=n/7或k=n//7;pos表示每天第一个数据的位置,因此②处代码为pos=i*k;③处表示不连续的情况,cnt要重置0,因此③处代码为cnt=0。
15. 某货架有多个格子组成,每个格子只能放置一个物品,格子从1开始编号。现已有n个物品放置在格子中,管理员从小号到大号顺序记录了物品所在的格子编号。现要对记录信息进行整理,格式为“[起始格子编号,连续放置货物的格子数量]”,如有7个物品放置的格子编号依次为“1,2,3,8”,则整理后的结果为“[1,3],[8,1]”,第1项表示物品放置的起始格子编号,第2项表示连续放置货物的格子数量。程序运行界面如图所示。请回答下列问题。
物品放置信息为: [1,2,3,4,7,8,9]
整理后的信息为: [[1,4],[7,3]]
(1)若8个物品的放置格子的编号依次为“2,3,4,7,8,9,15,16”,则整理后的结果为____。
(2)编写arrange(lst)函数,功能为将lst中的物品放置信息按题目要求进行整理。请在程序划线填入合适的代码。
def arrange(lst):
start=lst[0]
cnt=1
for num in lst[1:]:
if ____:
cnt+=1
else:
lnk.append([start,cnt])
start=num
cnt=1
lnk.append([start,cnt])
(3)管理员进行一轮物品取放操作后,需要对之前整理后的信息进行再次整理,如某一轮的取放操作为[["in",2],["in",10],["out",15],["in",19],["in",20]],第 1 项为"in"或"out","in"表示放置物品,"out"表示取出物品,第 2 项表示放置或取出物品的格子编号,且保证本轮取放操作中放置物品的格子编号之前未被占用、取出物品的格子中之前已放置物品。实现再次整理过程的部分 Python 程序如下,请在划线处填入合适的代码。
def solve(d,h):
p=q=h
if d[0] == "in": # 放置物品
if lnk[p][0] > d[1]+1:
lnk.append([d[1],1,q])
h=len(lnk)-1
return h
while q != -1 and ①____:
p=q
q=lnk[q][2]
if d[1] == lnk[p][0]+lnk[p][1] and d[1]+1 == lnk[q][0]:
lnk[p][1]=lnk[p][1]+lnk[q][1]+1
②____
elif d[1] == lnk[p][0]+lnk[p][1]:
lnk[p][1]+=1
elif d[1]+1 == lnk[q][0]:
lnk[q][0]-=1
③____
else:
lnk.append([d[1],1,q])
lnk[p][2]=len(lnk)-1
elif d[0] == "out":
# 取出物品,代码略
# 将放置物品的格子编号数据存储在列表 a 中,形式如[1,2,3,4,7,8,9]
lnk=[]
n=len(a)
arrange(a)
print("物品放置信息为:",a)
print("整理后的信息为:",lnk)
for i in range(1,len(lnk)):
lnk[i-1].append(i)
lnk[-1].append(-1)
# 某一轮的取放操作数据存放在列表info中,形式如[["in",5],['out',15],['in',11]]
m=len(info)
head=0
for i in range(m):
head=solve(info[i],head)
p=head
while p != -1:
print(lnk[p][0:2],end=",")
p=lnk[p][2]
【答案】(1)[2,3],[7,3],[15,2](说明:形式不限,只要起始位置和数量正确即可)
(2)num==start+cnt
(3) ①. d[1] >= lnk[q][0]+lnk[q][1]或d[1] > lnk[q][0]+lnk[q][1]-1 ②. lnk[p][2]=lnk[q][2] ③. lnk[q][1]+=1
【解析】
【详解】本题考查链表。
(1)根据题意可知,整理后的数据为[2,3],[7,3],[15,2]。
(2)划线处的代码表示连续相邻位置的情况,因此答案为num==start+cnt。
(3)①处所在循环的功能是在链表中寻找第一个比当前要放置物品格子编号大的格子或q指针为空,当链表指针q为-1时,说明当前要放置物品的格子编号比链表中最后一个节点中的格子编号大,因此①处代码为d[1]>=lnk[q][0]+lnk[q][1]或d[1]>lnk[q][0]+lnk[q][1]-1;②处表示当前放置物品的格子编号和它前后格子相邻,则合并p、q指针指向的节点,即修改p节点中占用格子数量为lnk[p][1]+lnk[q][1]+1,并删除q指向的节点,因此②处代码为lnk[p][2]=lnk[q][2];③处表示当前要放置物品的格子编号和q节点的格子编号相邻,则修改q节点的开始位置格子编号,并修改占用格子的数量,因此③处代码为lnk[q][1]+=1。
第1页/共1页
学科网(北京)股份有限公司
$
2025学年第二学期高二年级学业质量阶段调研
技术
注意事项:
1.本卷满分100分,考试时间90分钟;
2.答题前,在答题卷指定区域填写班级、姓名、考场、座位号及准考证号并核对条形码信息;
3.答题时,请按照答题纸上“注意事项”的要求,在答题纸相应的位置上规范作答,在本试卷上的作答一律无效。
第一部分 信息技术(共50分)
一、选择题(本大题共12题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
阅读下列材料,完成下面小题:
某体育健身中心引入了智慧跑道系统,该系统集成了多种传感器,可以准确地采集用户的运动数据,
如速度、心率、脚步频率等,数据存储在系统服务器的数据库中。注册用户可以通过手机APP随时查看自
己的运动数据。系统还会根据用户的运动数据,生成个性化的运动建议报告。管理员可通过移动终端APP
查看设备运行状况,还可远程控制摄像头的角度等。
1. 下列关于该系统中数据的说法,正确的是( )
A. 该系统的数据采集都由传感器完成
B. 该系统运行的过程中不会产生新的数据
C. 存储在服务器中的数据都是经过数字化处理的
D. 用户通过手机APP查看后的所有数据都保存在手机上
2. 下列关于该系统组成的描述,正确的是( )
A. 该系统中的智慧跑道软件是应用软件
B. 该系统不需要网络即可完成数据传输
C. 摄像头和数据库均属于该系统的硬件
D. 该系统的用户仅为注册用户和系统管理员
3. 下列关于该系统功能与应用的描述,正确的是( )
A. 使用该系统时不存在数字鸿沟问题
B. 该系统对外部环境没有依赖
C. 所有用户都能查看数据库中的全部数据
D. 该系统具有数据采集、处理和存储等功能
4. 下列有关该系统安全与防护的说法,合理的是( )
A. 未经用户允许,将用户信息发布在微信朋友圈
B. 对系统的管理员和普通用户设置相同的访问权限
C. 系统每天定时备份数据,是保护数据安全的重要措施
D. 只要服务器安装了杀毒软件,就可以保证数据的安全
5. 下列关于该系统网络技术的分析,正确的是( )
A. 计算机终端访问服务器不需要网络协议
B. 网络中的数据通信必须依靠传输介质来完成
C. 该系统的网络资源是指网络中的所有软件资源
D. 用户手机只能通过移动通信网络才能访问该系统
6. 下列有关人工智能的说法,正确的是( )
A. 强化学习方法一般脱离数据进行学习
B. 人工智能的实现都不需要事先手工构造知识库
C. 符号主义人工智能的实现依赖于对符号的推理和运算
D. 跨领域人工智能仅依赖于已有的数据和规则进行深度推理
7. 将声音传感器采集的声音存储为MP3格式音频文件,下列说法正确的是( )
A. 声音采集实现了从数字信号到模拟信号的转换
B. 提高声音的采样频率一定会提升声音的保真度
C. 为提高音频的音质,可将MP3格式音频转换为Wave格式
D. 将容量为5GB的视频文件上传到服务器,若网络传输速度为750Mbps,大约需要55秒
8. 某算法的部分流程图如图所示,执行这部分流程,若输入y的值为40,则输出s的值是( )
A. -5 B. -1 C. 1 D. 7
9. 已知a、b均为小于26的正整数,下列Python程序段中,能实现和语句y=(a+b)%26相同功能的是( )
A.
y=a%26+b%26
B.
if a+b>26:
y=a+b-26
else:
y=a+b
C.
if a+b<26:
y=a+b
else:
y=a+b-26
D.
y=a+b
if y>26:
y=y-26
A. A B. B C. C D. D
10. 有如下 Python 程序段:
y=tt=0
for i in range(len(a)):
if i%4 != 0:
tt+=a[i]
elif y < tt:
y=tt
tt=0
若列表a为[5,1,2,6,7,3,4,8,2,9,6,8,5,10,15,5],执行该程序段后,y的值为( )
A. 19 B. 23 C. 28 D. 30
11. 有如下 Python 程序段:
s="abbcabccb"
ch=s[0]; i=1
while i < len(s):
if len(ch) == 0 or s[i] != ch[0]:
ch=s[i]+ch
else:
ch=ch[1:len(ch)]
i+=1
执行该段代码后,ch的值为( )
A. aca B. aac C. cac D. ccc
12. 有如下Python程序段:
from random import randint
n=6
a=[randint(0,4)*2+1 for i in range(n)]
# randint(a,b),随机生成一个[a,b]范围内的整数
for i in range(2):
j=i+1
while j < n-1:
if i%2 == 0:
if a[j-1] < a[j] and a[j] > a[j+1]:
j+=2
else:
a[j]+=1
else:
if a[j-1] > a[j] and a[j] < a[j+1]:
j+=2
else:
a[j]-=2
运行后,数组a中的值可能的是( )
A. [2,4,3,5,1,3] B. [1,4,3,10,0,3] C. [9,10,3,5,7,5] D. [3,10,9,10,5,7]
二、非选择题(本大题共3小题,其中第13小题8分,第14小题9分,第15小题9分,共26分)
13. 某小组模拟搭建“噪声检测系统”,采集某小区多个区域的噪声数据,用于环境检测。采用智能终端连接声音传感器,每5分钟采集一次噪声数据,并通过无线通信方式将数据上传至服务器并存储在数据库中。服务器检测到噪声数据超过设定阈值时,向管理员手机发送预警信息,并通过智能终端控制蜂鸣器报警。管理员通过浏览器可查看系统数据。请回答下列问题:
(1)该系统中的蜂鸣器属于____(单选,填字母: A.传感器/B.执行器)
(2)一个智能终端 (单选)
A. 可以同时连接传感器和执行器 B. 不可以同时连接传感器和执行器
(3)下列操作可由智能终端完成的是 (单选,填字母)
A. 控制蜂鸣器响起
B. 向管理员手机发送预警信息
C. 将噪声数据存储在数据库中
(4)下列关于该系统的说法,正确的有 (多选,填字母)
A. 噪声传感器属于该系统的输出设备
B. 智能终端和服务器之间的通信是双向的
C. 传感器和智能终端只能通过有线方式通信
D. 可通过设置传感器的编号区分噪声数据所在的区域
(5)某区域声音吵杂,现场测得的噪声数据超过设定阈值,但蜂鸣器却未报警,请分析可能造成上述问题的原因。(写出两个原因)
14. 下载区域编号为02的噪声数据,并进行整理。选取2026年2月1日至7日6:00~18:00的噪声数据(每5分钟采集一次噪声数据),并存储在“noise.xlsx”文件中,部分数据如图1所示(时间格式为“时:分:秒”,噪声单位为“分贝”),现对文件中的数据进行处理和分析。
图1 图2
请回答下列问题:
(1)统计每天噪声大于55分贝的次数,并输出次数最多的前3天数据,编写程序运行后结果如图2所示。实现上述功能的部分Python程序如下所示,请选择合适的代码填入划线处(单选)。
import pandas as pd
df=pd.read_excel("noise.xlsx") # 读取文件中的数据
df1= ①____
df2= ②____
df2=df2.rename(columns={"噪声":"次数"}) # 重命名 df2 中“噪声”列名称为“次数”
df3= ③____
df4=df3.head(3)
print(df4)
程序中①②③处可选的代码有:
A.df[df.噪声>55]
B.df[df[噪声]>55]
C.df1.groupby("日期",as_index=False).count()
D.df1.groupby("日期",as_index=False).sum()
E.df2.sort_values("次数")
F.df2.sort_values("次数",ascending=False)
(2)噪声低于 40 分贝是理想的安静环境,为了统计出 7 天中“理想安静环境”的最长持续时间(每5分钟采集一次噪声数据,采集过程中无数据缺失,最长持续时间仅限单日不跨天),编写了如下Python程序,在程序中的①②划线处填入合适的代码。
# 将2026年2月1日至7日的噪声数据存储在数组data中,代码略
n=len(data)
①____
ans=0
for i in range(7):
②____
cnt=0
for j in range(pos,pos+k):
if data[j] <= 40:
cnt+=1
elif cnt > ans:
ans=cnt
③____
if cnt > ans:
ans=cnt
print((ans-1)*5,"分钟")
15. 某货架有多个格子组成,每个格子只能放置一个物品,格子从1开始编号。现已有n个物品放置在格子中,管理员从小号到大号顺序记录了物品所在的格子编号。现要对记录信息进行整理,格式为“[起始格子编号,连续放置货物的格子数量]”,如有7个物品放置的格子编号依次为“1,2,3,8”,则整理后的结果为“[1,3],[8,1]”,第1项表示物品放置的起始格子编号,第2项表示连续放置货物的格子数量。程序运行界面如图所示。请回答下列问题。
物品放置信息为: [1,2,3,4,7,8,9]
整理后的信息为: [[1,4],[7,3]]
(1)若8个物品的放置格子的编号依次为“2,3,4,7,8,9,15,16”,则整理后的结果为____。
(2)编写arrange(lst)函数,功能为将lst中的物品放置信息按题目要求进行整理。请在程序划线填入合适的代码。
def arrange(lst):
start=lst[0]
cnt=1
for num in lst[1:]:
if ____:
cnt+=1
else:
lnk.append([start,cnt])
start=num
cnt=1
lnk.append([start,cnt])
(3)管理员进行一轮物品取放操作后,需要对之前整理后的信息进行再次整理,如某一轮的取放操作为[["in",2],["in",10],["out",15],["in",19],["in",20]],第 1 项为"in"或"out","in"表示放置物品,"out"表示取出物品,第 2 项表示放置或取出物品的格子编号,且保证本轮取放操作中放置物品的格子编号之前未被占用、取出物品的格子中之前已放置物品。实现再次整理过程的部分 Python 程序如下,请在划线处填入合适的代码。
def solve(d,h):
p=q=h
if d[0] == "in": # 放置物品
if lnk[p][0] > d[1]+1:
lnk.append([d[1],1,q])
h=len(lnk)-1
return h
while q != -1 and ①____:
p=q
q=lnk[q][2]
if d[1] == lnk[p][0]+lnk[p][1] and d[1]+1 == lnk[q][0]:
lnk[p][1]=lnk[p][1]+lnk[q][1]+1
②____
elif d[1] == lnk[p][0]+lnk[p][1]:
lnk[p][1]+=1
elif d[1]+1 == lnk[q][0]:
lnk[q][0]-=1
③____
else:
lnk.append([d[1],1,q])
lnk[p][2]=len(lnk)-1
elif d[0] == "out":
# 取出物品,代码略
# 将放置物品的格子编号数据存储在列表 a 中,形式如[1,2,3,4,7,8,9]
lnk=[]
n=len(a)
arrange(a)
print("物品放置信息为:",a)
print("整理后的信息为:",lnk)
for i in range(1,len(lnk)):
lnk[i-1].append(i)
lnk[-1].append(-1)
# 某一轮的取放操作数据存放在列表info中,形式如[["in",5],['out',15],['in',11]]
m=len(info)
head=0
for i in range(m):
head=solve(info[i],head)
p=head
while p != -1:
print(lnk[p][0:2],end=",")
p=lnk[p][2]
第1页/共1页
学科网(北京)股份有限公司
$