内容正文:
11
2026年信息技术选考考前模拟卷02
答题卡
贴条形码区
考生禁填: 缺考标记
违纪标记
以上标志由监考人员用2B铅笔填涂
选择题填涂样例:
正确填涂
错误填涂 [×] [√] [/]
1.答题前,考生先将自己的姓名,准考证号填写清楚,并认真核准条形码上的姓名、准考证号,在规定位置贴好条形码。
2.选择题必须用2B铅笔填涂;非选择题必须用0.5 mm黑色签字笔答题,不得用铅笔或圆珠笔答题;字体工整、笔迹清晰。
3.请按题号顺序在各题目的答题区域内作答,超出区域书写的答案无效;在草稿纸、试题卷上答题无效。
4.保持卡面清洁,不要折叠、不要弄破。
注意事项
姓 名:__________________________
准考证号:
选择题(请用2B铅笔填涂)
1 [A] [B] [C] [D]
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 [A] [B] [C] [D]
8 [A] [B] [C] [D]
9 [A] [B] [C] [D]
10 [A] [B] [C] [D]
11 [A] [B] [C] [D]
12 [A] [B] [C] [D]
非选择题(请在各试题的答题区内作答)
13.(1)①
②
③
(2)
14. (1)
(2)
(3)
请在各题目的答题区域内作答,超出黑色矩形边框限定区域的答案无效!
(4)
(5)①
②
③
15. (1)
(2)①
②
(3)①
②
③
请在各题目的答题区域内作答,超出黑色矩形边框限定区域的答案无效!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
2026年信息技术选考考前模拟卷02
评分标准
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1
2
3
4
5
6
C
A
D
C
A
B
7
8
9
10
11
12
D
C
D
A
C
A
二、非选择题(本大题共3小题,其中第13小题8分,第14小题8分,第15小题10分,共26分)
13.
【答案】
(1)①s<M and mode==1或s<M and mode!=0(注:s<=M或s<m不给分)(2分)
②c==3或c>=3 (2分)
③ctime+=1 (2分)
(2)i<len(ct)-1或i<=len(ct)-2或其他等价答案 (2分)
14.
【答案】
B 1分
A 1分
ADE 2分
newtmp-tmp > t or newtmp-tmp < -t 或tmp-newtmp > t or tmp–newtmp < -t或abs(tmp-newtmp) > t或abs(newtmp-tmp) > t 2分
浏览器→互联网→服务器→数据库→服务器→互联网→浏览器 或 浏览器⇄互联网⇄服务器⇄数据库 或 浏览器→服务器→浏览器 或 浏览器⇄服务器 或其他合理答案 2分
15.
25 1分
[4,4] 1分
min(start+m-1, n-1) 或其他等价答案 2分
pos= left或其他等价答案 2分
1b + 1, [len(a)-1, len(a)-1]或其他等价答案 2分
insert_element(a, blocks, key, m, -1)或其他等价答案 2分
1
学科网(北京)股份有限公司
$
2026年信息技术选考考前模拟卷02
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
阅读下列材料,回答第1至3题。
某博物馆引入智能导览系统,该系统通过游客手持的导览器获取游客的实时位置,推送当前展品的图文介绍、语音解说及视频资料。游客可预先选择感兴趣的展品类别,系统将为其规划个性化的游览路线。
1.下列关于该系统中数据与信息的说法,正确的是
A.同一展品对不同游客的价值相同
B.系统推送展品资料不需要传输介质
C.系统中的数据是以二进制形式存储的
D.游客在游览过程中不会产生新的数据
【答案】C
【解析】(本题考查数据与信息)
A.同一展品对不同游客的价值不相同;B.信息需要依附于载体,但是载体可以转换;C.系统中的数据是以二进制形式存储的,是对的;D.游客在游览过程中不断的产生新的数据
2.下列有关信息安全与保护的做法,合理的是
A.定期备份博物馆展品数据
B.闭馆期间关闭系统服务器防火墙
C.将游客的相关信息分享给其他博物馆
D.在展厅大屏幕上显示所有游客的实时位置
【答案】A
【解析】(本题考查信息安全与保护)
A.定期备份博物馆展品数据,数据备份保护存储介质的安全;B.服务器防火墙不关闭;C.将游客的相关信息分享给其他博物馆,侵犯个人隐私;D.在展厅大屏幕上显示所有游客的实时位置,展厅展示不合理,一般游客不应该拥有此数据的权限
3.下列关于该系统中数据处理的说法,不正确的是
A.分析游客的游览路线可为优化展品布局提供依据
B.导览器播放展品的语音解说,需要经过数模转换
C.新展品的图文介绍等资料需经数字化后才能被系统推送
D.为减少系统存储占用,将MP3格式的音频转换成WAV格式
【答案】D
【解析】(本题考查数字化)
D.MP3格式是压缩后的,WAV格式是未压缩格式
阅读下列材料,回答第4至6题:
某连锁药店智能监管系统实现药品从入库到销售全程监管。入库区,智能扫码仪采集药品名称、批号、有效期等数据并保存;销售区,购药者需将身份证放入识别器的感应区并进行人脸识别,保证人证一致才能购买药品,若购药者未提供处方却试图购买处方药时会弹出警示窗;管理员可通过浏览器登录系统查看实时数据。
4.下列关于该连锁药店智能监管系统功能的说法,不正确的是
A.智能扫码仪可实现药品数据的收集和输入
B.该系统能实现人证合一的核验
C.违规购买处方药时,系统弹出警示窗,仅体现了系统的数据输出功能
D.管理员可通过浏览器查看药品销售情况等数据
【答案】C
【解析】(本题考查信息系统的功能)
系统弹出警示窗不仅涉及数据输出,还基于数据处理和决策(如判断购药行为是否违规),因此“仅体现数据输出功能”的说法不正确。其他选项正确:A中智能扫码仪用于数据收集和输入;B中系统通过身份证和人脸识别实现人证合一验证;D中管理员通过浏览器查看数据体现了数据查询功能。
5.下列关于该连锁药店智能监管系统中软件的说法,不正确的是
A.监管系统服务器属于系统软件
B.该软件应根据新的药品监管政策进行更新优化
C.购药者的身份核验功能需要软件支持
D.该系统的服务器和销售区终端可使用不同的操作系统
【答案】A
【解析】(本题考查信息系统中软件常识)
监管系统服务器通常指运行应用程序的服务器硬件或软件,但“监管系统服务器”本身是应用软件或硬件平台,而非系统软件。系统软件是指操作系统、驱动程序等基础软件。其他选项正确:B中软件需要根据新政策更新优化;C中身份核验功能需要软件处理数据;D中服务器和终端可使用不同操作系统(如Linux和Windows),只要它们能通过网络通信。
6.智能识别终端的下列功能中,最能体现人工智能技术应用的是
A.读取购买者出示的身份证号,并把后六位显示在屏幕上
B.购买者可通过人脸识别自动核验购药者身份信息
C.接收云端服务器发送的最新药品监管规则
D.将违规购买记录按固定格式整理后上传至服务器
【答案】B
【解析】(本题考查人工智能技术应用)
人脸识别技术涉及图像识别、机器学习和模式识别,是人工智能的典型应用。其他选项没有体现 AI技术:A是简单数据读取和显示;C是网络数据传输;D是数据整理和上传。
7.计费功能的部分流程图如第7题图所示,流程图中应填入的正确内容是
A.①t>0?
②money←money+0.5
B.①>0且money<3?
②money←((t-1)//12+1)×0.5
C.①t>0或money<3?
②money←t//12×0.5
D.①t>0且money<3?
②money←money+0.5
【答案】D
【解析】(本题考查流程图)
第 7题图题中智能快递柜计费规则为:18 小时以内免费,超时后每 12 小时收费 0.5元,不足 12 小时按 12 小时计,最高收费3元。t为用户存储时长,结合t=t-18 和循环体中的 t=t-12 易得①处循环判断条件为 t>0,又因为最高收费3元,故当 money>=3 时也需要推出循环,故①处的答案为 t>0andmoney<3?,选项A、C 错误。流程图采用循环的方式累积计费,故每次执行 t=t-12 后,money 需要+0.5,选项 B 的式子用于一次性算出所需费用,与题意不符,故答案选D
8.用一维数组表示二又树,如下表所示:
下列有关该二叉树的说法正确的是
A.该树中共有4个叶子节点
B.该树是完全二叉树,其深度为4
C.该树的中序遍历为 E-C-F-B-D-G-A
D.将此二叉树变成满二叉树还需增加4个节点
【答案】C
【解析】(本题考查二叉树)
A.该树有 3个叶子结点B.该树不是完全二叉树D.将该树变成满二叉树还需8个结点
9.用python列表模拟循环队列,并设置队首指针head指向队首元素,队尾指针tail指向队尾元素的下一个位置,则当列表长度n=10,head=6,tail=3时,队列中元素的个数为
A.3
B.5
C.6
D.7
【答案】D
【解析】(本题考查队列)
长度为10因此其下标如下所示,head有元素,tail无元素,元素个数为7个。
10.定义如下函数:
def f(x):
if x==1 or x==2:
return 1
else:
return f(x-1)+f(x-2)
s=0
for i in range(1,5):
s+=f(i)
执行该程序段后,函数f被调用的次数是
A.10 B.9 C.8 D.7
【答案】A
各函数调用次数:f(1)调用1次f(2)调用1次f(3)=f(1)+f(2)调用3次f(4)=f(2)+f(3)调用5次总计10次
11.有如下python程序段:
a=[100,90,15,40,72,65,32,81,6];b=[8,2,6,3,5,4,7,1,0]
i=0
j=len(a)-1
c=0
key=72
while i<=j:
m=(i+j)//2
if a[b[m]]==key:
break
elif a[b[m]]<key:
i=m+1
else:
j=m-1
c+=1
程序执行结束后变量c的值为
A.4 B.3 C.2 D.1
【答案】C
【解析】(本题考查对分查找)数组b是对数组a的索引排序结果,还原a[b[i]]=[6,15,32,40,65,72,81,90,100],即被对分的数组升序排序。查找值key=72,需要查找3次,但由于c+=1写在循环体最后,触发break后,最后1次对分次数未被记录,故c最后结果为2。
12.有如下Python程序段:
def max_w(nums,k):
dq=[]
result=[]
for i in range(len(nums)):
while len(dq)>0 and nums[dq[-1]]<nums[i]:
dq.pop() #去除dq最后一个元素
dq.append(i) #为dq添加一个元素i
if len(dq)>0 and i-dq[0]>=k:
dq.pop(0) #去除dq第一个元素
if i>=k-1:
result.append(nums[dq[0]])
return result
print(max_w(nums,k))
若nums为[1,3,-1,-3,5,3,6,7],k为3,运行该程序段后,输出的结果是
A.[3,3,5,5,6,7] B.[-1,-3,-3,-3,3,3] C.[3,3,-1,5,5,6] D.[1,3,3,3,5,5,6,7]
【答案】A
【解析】(本题考查滑动窗口最大值算法)
dq:双端队列(用列表模拟),存储的是下标,且队列对应下标的值在nums中单调递减(队首是当前窗口的最大值下标)。
result:存储每个窗口的最大值。
k:窗口大小。
nums:输入数组[1,3,-1,-3,5,3,6,7]。
13.某电商平台每分钟监测当前排队等待客服服务的用户数,根据等待用户数动态调整客服模式(人工模式或“AI+人工”混合模式)。当排队用户数超过上限阈值N时,系统切换到混合模式;当排队用户数低于下限阈值M(M<N)时,系统切换到人工模式。每种模式一旦激活,至少持续3分钟。系统记录每次混合模式的起止时间点,为招聘客服提供数据支持。
(1)实现上述功能的部分Python程序如下,请在划线处填入合适的代码。
#设置上限阈值N和下限阈值M,代码略
c=0
ct=[] #记录混合模式的起止时间点
mode=0 #0表示人工模式,1表示“AI+人工”混合模式
ctime=1
while True:
#读取当前排队用户数,存入s,代码略
if s>N and mode==0 or ____①____:
c=c+1
if ____②____:
mode=1-mode
ct.append(ctime)
c=0
else:
c=0
____③____
#延时1分钟,代码略
(2)下面代码实现的功能是输出ct中每次混合模式的起止时间,加框处代码有误,请改正。
i=0
while i<len(ct):
st=ct[i]
ed=ct[i+1]
输出混合模式的起止时间点,代码略
i=i+2
【答案】
(1)①s<M and mode==1或s<M and mode!=0(注:s<=M或s<m不给分)(2分)
②c==3或c>=3 (2分)
③ctime+=1 (2分)
(2)i<len(ct)-1或i<=len(ct)-2或其他等价答案 (1分)
【解析】(本题考查Python条件判断、边界控制等简单算法)
(1)①当排队用户数低于下限阈值M且当前为混合模式时,需触发切换回人工模式的条件。答案为s<M and mode==1
②模式切换需满足持续3分钟的条件,c是连续满足切换条件的分钟计数器。答案为c>=3
③每次循环后时间点递增1分钟,确保时间记录准确。答案为ctime=ctime+1
(2)原错误:while i<len(ct)在ct长度为奇数时,最后一次循环的i+1会超出列表范围改正方案:将循环条件改为i<len(ct)-1,确保每次循环能完整取出一组起止时间点
14.某社区要搭建一个“安全监测系统”,用于监控活动室的温度、烟雾浓度等数据,并根据阈值自动控制或接收服务器指令控制相关执行器,可通过浏览器查询实时和历史数据。系统结构如图所示:
请回答下列问题:
(1)该系统的网络应用软件的实现架构是 (单选,填字母:A.C/S架构/B.B/S架构)
(2)系统正常运行一段时间后,若更换不同型号的温度传感器,可能需要修改 (单选,填字母:A.智能终端程序/B.服务器端程序/C.智能终端和服务器端程序)
(3)下列关于该系统数据与功能的说法,正确的有 (多选,填字母)。
A.该系统大部分数据处理在服务器端完成
B.传感器数据保存在智能终端,浏览记录保存在数据库
C.该社区活动室网络故障会影响该系统正常运行
D.若增加湿度监控功能,需要增加湿度传感器
E.可以通过服务器打开温控或烟控设备
(4)由于活动室温度数据一天中变化不大,智能终端相关数据上传采用以下策略:当数据变化大于t时上传一次温度数据,否则不上传。请在程序划线处填入合适的代码。
#导入相关库,并从服务器获取数据变化阈值t,代码略
#传感器获取第一个温度数据存入tmp
while True:
#从传感器获取温度值,保存在newtmp中,代码略
if :
#将newtmp数据上传到服务器,代码略
tmp = newtmp
sleep(1000) #延时1分钟
(5)请按例写出“浏览温度的历史数据”的数据流转过程: 。(例如,温度数据获取:温度传感器→智能终端)
【答案】 B A ADE newtmp-tmp > t or newtmp-tmp < -t 或tmp-newtmp > t or tmp–newtmp < -t或abs(tmp-newtmp) > t或abs(newtmp-tmp) > t 浏览器→互联网→服务器→数据库→服务器→互联网→浏览器 或 浏览器⇄互联网⇄服务器⇄数据库 或 浏览器→服务器→浏览器 或 浏览器⇄服务器 或其他合理答案
【详解】本题考查信息系统搭建及数据处理。
(1)该系统的网络应用软件的实现架构是B/S架构。B/S架构是浏览器/服务器架构,用户通过浏览器访问服务器获取数据和服务,适合于通过互联网进行数据查询和控制。故答案为:B。
(2)系统正常运行一段时间后,若更换不同型号的温度传感器,可能需要修改智能终端程序。因为传感器的数据格式或通信协议可能不同,需要智能终端程序进行适配。故答案为:A。
(3)关于该系统数据与功能的说法,正确的有A、D、E。A项正确,因为大部分数据处理在服务器端完成。D项正确,因为增加湿度监控功能需要增加湿度传感器。E项正确,因为可以通过服务器发送指令控制温控或烟控设备。故答案为:ADE。
(4)智能终端相关数据上传策略的代码应为:|newtmp-tmp|>t。该条件判断温度变化是否超过阈值t,若超过则上传数据。故答案为:abs(newtmp - tmp) > t。
(5)“浏览温度的历史数据”的数据流转过程可以是:浏览器→互联网→服务器→数据库→服务器→互联网→浏览器。用户通过浏览器请求服务器,服务器从数据库获取历史数据并返回给浏览器。
15.某医院为提高患者就诊效率,引进了一个“挂号就诊排队系统”。该系统每天共放出100个号,编号为(1-100),医生每天8:30开始出诊。患者预约挂号,按照挂号的时间顺序给患者从小到大发放对应编号;患者到医院就诊时需要到签到机上进行签到排队,患者当天初诊后可以进行回诊,回诊需要在签到机上再次签到排队。签到排队规则:①患者签到后开始排队,签到后患者按照挂号的编号由小到大排队②回诊患者问诊优先于初诊患者。
(1)假定患者的挂号签到信息如右图所示,0代表初诊,1代表回诊,假定患者初诊问诊时长分别为8,5,8,6,10, 患者10 回诊问诊时长为9,根据题意可知,患者的叫号就诊顺序为(按挂号编号叫号)8,10,3,1,10,6,如果挂号编号为3的患者签到时间改为08:35,患者的叫号就诊顺序是否发生变化 (填:是/否)
(2)定义如下 px(data)函数,函数 data 的每个元素由“挂号编号”、“签到时间”、“是否回诊”3 个数据项组成。函数的功能是根据签到时间升序排序。
def px(data):
p_wait=[[]for i in range(len(data))]
x=0
for i in range(len(data)):
t=int(data[i][1][:2])*60+int(data[i][1][3:])
#将时间转换成分钟,如8:30转换为510
while j>=0 and t<p_wait[j][1]:
p_wait[j+1]=p_wait[j]
j-=1
p_wait[j+1]=[data[i][0],t,data[i][2]]
x+=1
return p_wait
①请在划线处填入合适代码。
② 若上述主代码画框处的条件“j>=0 and t<p_wait[j][1]”误写成“j>0 and t<p_wait[i][1]”,会导致某些情况下无法得到符合要求的结果。下列4组数据中能测试出这一问题的是 (单选,填字母)。
A.p_wait=[[1,510,0],[10,520,0],[""]] B.p_wait=[[1,510,0],[""]]
t=515 t=515
C.p_wait=[[10,520,0],[""]] D.p_wait=[[10,520,0],[1,530,0],[“"]]
t=510 t=520
(3)实现模拟排队叫号的部分Python程序如下,请在划线处填入合适的代码。
import random as rd
def proc(p_wait):
n=len(p_wait);queinfo=[-1,-1]
for i in range(n):
p_wait[i].append(-1)
call_time=510 #模拟时间推进(医生8:30开始叫号)
waitpatient=0;i=0;jzxx=[]
while_______①_______:
if i<n and p_wait[i][1]<=call_time:
k=p_wait[i][2]
if queue[k]==-1:
queue[k]=i
else:
head=queue[k]
p=pre=head
while p!=-1 and p_wait[i][0]>p_wait[p][0]:
pre=p
p=p_wait[p][3]
if p==head:
p_wait[i][3]=head
______②______
else:
p_wait[i][3]=p
p_wait[pre][3]=i
waitpatient+=1;i+=1
elif waitpatient>0:
k=1
while queue[k]==-1:
k-=1
______③______
if k==1:
jzxx.append(str(p_wait[p][0])+"(回诊)")
else:
jzxx.append(p_wait[p][0])
queue[k]=p_wait[p][3]
waitpatient-=1
call_time+=rd.randint(5,10) #模拟患者就诊花费时间
else:
call_time=p_wait[i][1]
return jzxx
"""
读取n个患者的数据,存储到列表data中,每个元素有3个数据项,分别为挂号编号、签到时间、是否回诊,如[[1,"08:50",0],[3,"08:40",0]…],代码略
"""
p_wait=px(data)
print("模拟就诊叫号顺序为(挂号编号):")
fori in proc(p_wait):
print(i)
【答案】 25 [4,4] min(start+m-1, n-1) 或其他等价答案 pos= left或其他等价答案 1b + 1, [len(a)-1, len(a)-1]或其他等价答案 insert_element(a, blocks, key, m, -1)或其他等价答案
【详解】本题考查数组。
(1)操作5待存储数据为7,当前列表为[7,13,25],7已存在,存储结果不变。 列表第3个元素(索引2)为25。
(2) ① 分块结果计算:列表a=[1,2,5,7,9],m=2,分块逻辑:第1块:start=0,end=min(0+2-1,5-1)=1 → [0,1];第2块:start=2,end=min(2+2-1,4)=3 → [2,3];第3块:start=4,end=min(4+2-1,4)=4 → [4,4]。最后一个元素为[4,4]。②代码错误修正:n是列表长度(如a=[1,2,5,7,9]的n=5),但列表索引最大为n-1(即 4),若用n会导致end超出有效索引(如start=4时,start+m-1=5,min(5,5)=5,超出索引 4)。因此需将n改为n-1,修正后代码为 min(start + m - 1, n-1),确保end在有效索引范围内, 。
(3)① 插入位置确定 :insert_element函数中,bi不为 - 1 时,通过二分查找在blocks[bi]对应的块内定位key的插入位置:二分循环(left <= right)结束后,left指向第一个大于key的元素索引(或列表末尾),该位置正是key需插入的位置(保证列表升序)。因此需将left赋值给pos,即①处填 pos = left。② 新块创建:更新块信息时,lb=len(blocks)-1(最后一块的索引),若最后一块元素数已满(blocks[lb][1]-blocks[lb][0]+1 == m),需插入新块:新块的起始索引为最后一块的结束索引 + 1(即blocks[lb][1]+1),结束索引为插入key后列表的最后一个索引(len(a)-1)。由于插入key后新块仅含 1 个元素,起始索引与结束索引相同(均为len(a)-1),因此新块为[len(a)-1, len(a)-1],插入位置为lb+1(最后一块之后),即②处填 lb + 1, [len(a)-1, len(a)-1]。③ 处理末尾插入:find_element函数中,若遍历所有块后,key仍大于所有块的a[end](即key需插入列表末尾),需调用insert_element插入。结合insert_element函数逻辑:bi=-1时执行a.append(key)(末尾插入),因此需传入bi=-1,即③处填 insert_element(a, blocks, key, m, -1)。
1
学科网(北京)股份有限公司
$
2026年信息技术选考考前模拟卷02
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
阅读下列材料,回答第1至3题。
某博物馆引入智能导览系统,该系统通过游客手持的导览器获取游客的实时位置,推送当前展品的图文介绍、语音解说及视频资料。游客可预先选择感兴趣的展品类别,系统将为其规划个性化的游览路线。
1.下列关于该系统中数据与信息的说法,正确的是
A.同一展品对不同游客的价值相同
B.系统推送展品资料不需要传输介质
C.系统中的数据是以二进制形式存储的
D.游客在游览过程中不会产生新的数据
2.下列有关信息安全与保护的做法,合理的是
A.定期备份博物馆展品数据
B.闭馆期间关闭系统服务器防火墙
C.将游客的相关信息分享给其他博物馆
D.在展厅大屏幕上显示所有游客的实时位置
3.下列关于该系统中数据处理的说法,不正确的是
A.分析游客的游览路线可为优化展品布局提供依据
B.导览器播放展品的语音解说,需要经过数模转换
C.新展品的图文介绍等资料需经数字化后才能被系统推送
D.为减少系统存储占用,将MP3格式的音频转换成WAV格式
阅读下列材料,回答第4至6题:
某连锁药店智能监管系统实现药品从入库到销售全程监管。入库区,智能扫码仪采集药品名称、批号、有效期等数据并保存;销售区,购药者需将身份证放入识别器的感应区并进行人脸识别,保证人证一致才能购买药品,若购药者未提供处方却试图购买处方药时会弹出警示窗;管理员可通过浏览器登录系统查看实时数据。
4.下列关于该连锁药店智能监管系统功能的说法,不正确的是
A.智能扫码仪可实现药品数据的收集和输入
B.该系统能实现人证合一的核验
C.违规购买处方药时,系统弹出警示窗,仅体现了系统的数据输出功能
D.管理员可通过浏览器查看药品销售情况等数据
5.下列关于该连锁药店智能监管系统中软件的说法,不正确的是
A.监管系统服务器属于系统软件
B.该软件应根据新的药品监管政策进行更新优化
C.购药者的身份核验功能需要软件支持
D.该系统的服务器和销售区终端可使用不同的操作系统
6.智能识别终端的下列功能中,最能体现人工智能技术应用的是
A.读取购买者出示的身份证号,并把后六位显示在屏幕上
B.购买者可通过人脸识别自动核验购药者身份信息
C.接收云端服务器发送的最新药品监管规则
D.将违规购买记录按固定格式整理后上传至服务器
7.计费功能的部分流程图如第7题图所示,流程图中应填入的正确内容是
A.①t>0?
②money←money+0.5
B.①>0且money<3?
②money←((t-1)//12+1)×0.5
C.①t>0或money<3?
②money←t//12×0.5
D.①t>0且money<3?
②money←money+0.5
8.用一维数组表示二又树,如下表所示:
下列有关该二叉树的说法正确的是
A.该树中共有4个叶子节点
B.该树是完全二叉树,其深度为4
C.该树的中序遍历为 E-C-F-B-D-G-A
D.将此二叉树变成满二叉树还需增加4个节点
9.用python列表模拟循环队列,并设置队首指针head指向队首元素,队尾指针tail指向队尾元素的下一个位置,则当列表长度n=10,head=6,tail=3时,队列中元素的个数为
A.3 B.5 C.6 D.7
10.定义如下函数:
def f(x):
if x==1 or x==2:
return 1
else:
return f(x-1)+f(x-2)
s=0
for i in range(1,5):
s+=f(i)
执行该程序段后,函数f被调用的次数是
A.10 B.9 C.8 D.7
11.有如下python程序段:
a=[100,90,15,40,72,65,32,81,6];b=[8,2,6,3,5,4,7,1,0]
i=0
j=len(a)-1
c=0
key=72
while i<=j:
m=(i+j)//2
if a[b[m]]==key:
break
elif a[b[m]]<key:
i=m+1
else:
j=m-1
c+=1
程序执行结束后变量c的值为
A.4 B.3 C.2 D.1
12.有如下Python程序段:
def max_w(nums,k):
dq=[]
result=[]
for i in range(len(nums)):
while len(dq)>0 and nums[dq[-1]]<nums[i]:
dq.pop() #去除dq最后一个元素
dq.append(i) #为dq添加一个元素i
if len(dq)>0 and i-dq[0]>=k:
dq.pop(0) #去除dq第一个元素
if i>=k-1:
result.append(nums[dq[0]])
return result
print(max_w(nums,k))
若nums为[1,3,-1,-3,5,3,6,7],k为3,运行该程序段后,输出的结果是
A.[3,3,5,5,6,7] B.[-1,-3,-3,-3,3,3] C.[3,3,-1,5,5,6] D.[1,3,3,3,5,5,6,7]
二、非选择题(本大题共3小题,其中第13小题8分,第14小题8分,第15小题10分,共26分)
13.某电商平台每分钟监测当前排队等待客服服务的用户数,根据等待用户数动态调整客服模式(人工模式或“AI+人工”混合模式)。当排队用户数超过上限阈值N时,系统切换到混合模式;当排队用户数低于下限阈值M(M<N)时,系统切换到人工模式。每种模式一旦激活,至少持续3分钟。系统记录每次混合模式的起止时间点,为招聘客服提供数据支持。
(1)实现上述功能的部分Python程序如下,请在划线处填入合适的代码。
#设置上限阈值N和下限阈值M,代码略
c=0
ct=[] #记录混合模式的起止时间点
mode=0 #0表示人工模式,1表示“AI+人工”混合模式
ctime=1
while True:
#读取当前排队用户数,存入s,代码略
if s>N and mode==0 or ____①____:
c=c+1
if ____②____:
mode=1-mode
ct.append(ctime)
c=0
else:
c=0
____③____
#延时1分钟,代码略
(2)下面代码实现的功能是输出ct中每次混合模式的起止时间,加框处代码有误,请改正。
i=0
while i<len(ct):
st=ct[i]
ed=ct[i+1]
输出混合模式的起止时间点,代码略
i=i+2
14.某社区要搭建一个“安全监测系统”,用于监控活动室的温度、烟雾浓度等数据,并根据阈值自动控制或接收服务器指令控制相关执行器,可通过浏览器查询实时和历史数据。系统结构如图所示:
请回答下列问题:
(1)该系统的网络应用软件的实现架构是 (单选,填字母:A.C/S架构/B.B/S架构)
(2)系统正常运行一段时间后,若更换不同型号的温度传感器,可能需要修改 (单选,填字母:A.智能终端程序/B.服务器端程序/C.智能终端和服务器端程序)
(3)下列关于该系统数据与功能的说法,正确的有 (多选,填字母)。
A.该系统大部分数据处理在服务器端完成
B.传感器数据保存在智能终端,浏览记录保存在数据库
C.该社区活动室网络故障会影响该系统正常运行
D.若增加湿度监控功能,需要增加湿度传感器
E.可以通过服务器打开温控或烟控设备
(4)由于活动室温度数据一天中变化不大,智能终端相关数据上传采用以下策略:当数据变化大于t时上传一次温度数据,否则不上传。请在程序划线处填入合适的代码。
#导入相关库,并从服务器获取数据变化阈值t,代码略
#传感器获取第一个温度数据存入tmp
while True:
#从传感器获取温度值,保存在newtmp中,代码略
if :
#将newtmp数据上传到服务器,代码略
tmp = newtmp
sleep(1000) #延时1分钟
(5)请按例写出“浏览温度的历史数据”的数据流转过程: 。(例如,温度数据获取:温度传感器→智能终端)
15.现需要对依次输入的一批整型数据进行存储,要求不重复,且存储后的数据保持升序有序。为此,小明设计如下数据存储方法:一开始数据存储区域为空(程序实现时用空列表[]表示),当某个输入数据需要存储时,先判断相同的数据是否已经存储过,若已存储,则不再重复存储,否则将该数据存入列表,并保证列表中的数据升序有序。
如现在需要依次存储的数据为13,7,25,13,7,24,……,存储数据的过程如表所示。
操作序号
待存储数据
存储结果
1
13
[13]
2
7
[7, 13]
3
25
[7, 13, 25]
4
13
[7, 13, 25]
5
7
…
…
…
随着存储过程的进行,列表中的数据越来越多,为提高数据存储效率,小明对数据存储方法进行了优化:先将已经存储数据的列表依次分成若干块(每块元素个数为m,最后一块元素若不足m个时,单独成一块),然后在分块数据的基础上再进行后续的数据存储。
请回答下列问题:
(1)根据小明设计的数据存储方法,执行如表所示操作序号为5的操作(即待存储数据7)后,存储结果中的第3个元素为▲ 。
(2)定义如下block_partition(a, m)函数,参数a为按升序排序后的列表(元素均为整型)。函数功能是将列表a从头至尾依次分成若干块(每块m个元素),最后一块元素若不足m个时,单独成一块,并记录每块的起始和结束位置索引。
def block_partition(a, m):
blocks=[]
n = len(a)
start=0
while start <n:
end =min ( start +m- 1, n)# 函数min(x,y)求x和y的较小值
blocks. append([start, end])
start = end + 1 # 下一块起始索引
return blocks
①调用block_partition函数,若列表a为[1,2,5,7,9],m为2,则返回结果blocks中的第一个元素为[0,1],最后一个元素为▲ 。
②程序中加框处代码有错,请改正。
(3)实现优化后数据存储功能的Python程序段如下,请在划线处填入合适的代码。
def insert_element(a, blocks, key, m, bi): #存储数据key到列表a中,并更新块信息
if len(a) == 0:
a. append(key)
blocks =[[0,0]]
return
if bi ==-1:
a.append (key)
else:
left, right = blocks[bi][0], blocks[bi][1]
while left <= right:
mid = (left + right) // 2
if a[mid]< key:
left = mid + 1
else:
right = mid -1
①
a.insert(pos, key) # 在列表a的pos索引位置插入数据key
#更新块信息
lb=len(blocks)-1
if blocks[1b][1]-blocks[1b][0]+1<m:
blocks[1b][1]= len(a)-1
else:
blocks.insert(② ) # 创建新的块
def find_element(a, blocks, key):
for i in range(len(blocks)):
start, end = blocks[i][0], blocks[i][1]
if key <= a[end]:
left, right = start, end
while left <= right:
mid = (left + right) //2
if a[mid] == key:
return True
elif a[mid] < key:
left = mid + 1
else:
right = mid -1
insert_element(a, blocks, key, m, i) #插入
return False
③
return False
’ ’ ’
算法优化前,部分数据已存入列表a
读入分块大小,存入m,代码略
’ ’ ’
blocks = block_partition(a, m) #对列表a分块
继续依次存储数据,对每个待存储数据key调用find_element(a, blocks, key)
实现存储
代码略
’ ’ ’
第 1 页 共 9 页
学科网(北京)股份有限公司
$