内容正文:
舟山市2025学年第二学期期末检测
高二技术试题卷
考生须知:
本试题卷分两部分,即:第一部分信息技术(50分),第二部分通用技术(50分)。全卷共14页,第一部分信息技术1至8页,第二部分通用技术9至14页。满分100分,考试时间90分钟。
答题前,考生务必将自己的姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸上,并按规定用笔将所有试题的答案涂、写在答题纸上,答案写在本试题卷上无效。
选择题的答案须用2B铅笔将答题纸上对应题目的答案标号涂黑,如要改动,须将原填涂处用橡皮擦擦净。非选择题的答案须用黑色字迹的签字笔或钢笔写在答题纸上相应区域内,作图时可使用2B铅笔,确定后须用黑色字迹的签字笔或钢笔描黑。
第一部分 信息技术(共50分)
一、选择题(本大题共12小题,每小题2分,共24分,每小题列出的四个备选项中只有一个是符合题目要求的,不选、错选、多选均不得分。)
阅读下列材料,完成下面小题:
2026年春晚使用了人工智能媒体应用平台,其中的“央视听媒体大模型2.0”基于海量数据和生成式人工智能技术构建。该平台可实现虚拟影像和实景舞台无缝融合,数字人演员和真人演员可在不同场景中合作表演。5G网络支持高清视频流的全球分发,确保低延迟、高质量的观看体验。
1. 下列关于该平台中数据与信息的说法,正确的是( )
A. 5G网络的使用使得信息可以脱离载体
B. 大模型在推理过程中不会产生新的数据
C. 数字人演员的生成过程体现了信息的加工处理
D. 视频流在传输过程中,其蕴含的信息价值不会随着时间推移而变化
2. 下列关于该平台中人工智能技术的说法,正确的是( )
A. 大模型使用了联结主义的人工智能方法 B. 视频流中的动作画面属于结构化数据
C. 对视频流的实时处理体现了批处理计算 D. 未来人工智能将全面取代春晚工作人员
【答案】1. C 2. A
【解析】
【1题详解】
本题考查数据与信息的基本性质及相关概念。信息必须依附于一定的载体,不存在脱离载体的信息,因此第一个选项错误;大模型推理生成内容的过程中,会产生新的输出数据,因此第二个选项错误;数字人演员是通过对海量信息、数据进行加工处理得到的成果,该生成过程体现了信息的加工处理,第三个选项正确;信息具有时效性,多数信息的价值会随着时间的推移发生变化,春晚相关视频的信息价值也会随时间推移改变,因此第四个选项错误。故答案为:C。
【2题详解】
本题考查人工智能技术的相关概念。当前生成式大模型基于深度学习技术构建,深度学习属于联结主义人工智能的范畴,第一个选项正确;结构化数据是可以用二维表结构存储整理的规整数据,视频流的动作画面属于非结构化数据,第二个选项错误;批处理计算是对批量数据进行离线处理,对视频流的实时处理属于流计算,不属于批处理计算,第三个选项错误;人工智能只是生产辅助工具,不会全面取代春晚工作人员,第四个选项错误。故答案为:A。
阅读下列材料,完成下面小题。
舟山某地建设了“智慧渔港”信息系统。该系统可整合渔船进出港信息、渔获交易记录和港区视频监控等数据,为管理部门、渔民和商户提供服务。管理人员可通过浏览器登录平台查看港区运行情况,渔民可通过手机端查询靠泊信息、交易数据等。系统还能为渔港调度、渔业生产管理和市场供应预测提供支持。为方便老年渔民使用,系统设置了字体更大、操作更简洁的服务界面。
3. 下列关于该信息系统组成的描述,正确的是( )
A. 港区视频监控设备属于该系统的输入设备
B. 渔民不是该信息系统的用户
C. 渔获交易记录不属于该系统的数据资源
D. 浏览器属于该系统的硬件资源
4. 下列关于该信息系统功能与应用的说法,不正确的是( )
A. 依据系统数据安排渔港调度体现了信息系统的决策支持作用
B. 该系统提供适老化界面有助于缩小数字鸿沟
C. 该系统整合多类业务数据有利于提高渔港管理效率
D. 该系统对外部环境没有依赖
5. 下列关于该信息系统中网络与信息安全的说法,正确的是( )
A. 该系统中的数据只能保存在一台计算机中
B. 该系统不需要服务器支持
C. 该系统通过数据校验以保证传输数据的完整性
D. 该系统中的数据在断网后一定是安全的
【答案】3. A 4. D 5. C
【解析】
【3题详解】
本题考查信息系统的基本组成。A选项,港区视频监控设备的作用是向系统输入视频监控数据,属于该系统的输入设备,描述正确;B选项,材料明确说明渔民可通过手机端使用该系统查询信息,渔民是该信息系统的用户,描述错误;C选项,该系统整合了渔获交易记录数据,渔获交易记录属于该系统的数据资源,描述错误;D选项,浏览器是应用软件,不属于该系统的硬件资源,描述错误。故答案为:A。
【4题详解】
本题考查信息系统的功能与应用。A选项,该系统能够为渔港调度提供支持,依据系统数据安排渔港调度体现了信息系统的决策支持作用,说法正确;B选项,系统设置简洁大字体的适老化界面方便老年渔民使用,有助于缩小数字鸿沟,说法正确;C选项,系统整合多类业务数据,方便统一管理,有利于提高渔港管理效率,说法正确;D选项,该信息系统依赖网络、硬件设备等外部条件,对外部环境存在依赖,说法错误,本题要求选出不正确的选项。故答案为:D。
【5题详解】
本题考查信息系统的网络与信息安全知识。A选项,该系统是网络信息系统,数据可以分布式存储在多台设备中,并非只能保存在一台计算机中,说法错误;B选项,该系统是面向多用户的网络服务系统,需要服务器存储数据、提供服务支持,说法错误;C选项,信息系统在数据传输过程中会通过数据校验保障传输数据的完整性,说法正确;D选项,断网后数据仍可能存在本地泄露、硬件损坏等风险,并非一定安全,说法错误。故答案为:C。
6. 下列关于声音数字化的说法,不正确的是( )
A. 声音数字化是将连续的物理量转换成离散数据
B. 声音数字化一般需要经过采样、量化和编码
C. 声音容量大小仅由量化位数和采样频率决定
D. 对同一个采样点分别采用8位和24位量化,其容量之比为1:3
【答案】C
【解析】
【详解】本题考查声音数字化的基础知识。声音是连续的模拟信号,声音数字化就是将连续的物理模拟量转换为离散的数字数据,过程一般分为采样、量化、编码三步,前两种说法正确;音频存储容量由采样频率、量化位数、声道数、时长多个因素共同决定,并非仅由量化位数和采样频率决定,因此该说法错误;相同条件下容量和量化位数成正比,8位和24位量化的容量比为1:3,最后一种说法正确,本题要求选出不正确的选项。故答案为:C。
7. 某算法的部分流程图如图所示,输入下列数据,输出值与其他三项不同的是( )
A. 11 B. 13 C. 23 D. 25
【答案】C
【解析】
【详解】本题考查流程图的执行,算法功能为统计整数二进制表示中1的个数。该流程图初始化计数变量c为0,当n大于0时,每次取n除以2的余数r,将r累加到c,再将n更新为n除以2的整数商,最终输出的c就是n的二进制中1的个数,依次计算四个输入对应的输出结果:输入11,二进制为1011,共包含3个1,输出为3;输入13,二进制为1101,共包含3个1,输出为3;输入23,二进制为10111,共包含4个1,输出为4;输入25,二进制为11001,共包含3个1,输出为3。只有23的输出结果和其他三项不同。故答案为:C。
8. 用数字1到7分别表示周一到周日,假设某月第一天是周三,则计算该月第k天是周几的Python表达式为( )
A. (k+3)% 7+1 B. (k+1)% 7+1 C. (k+1)% 7+3 D. (k+2)% 7+1
【答案】B
【解析】
【详解】本题考查Python基本表达式的逻辑应用和星期日期的推理计算能力。我们可以通过特殊值代入法验证推导:已知1到7分别对应周一到周日,该月第1天即k=1时,结果应为3(周三)。对四个选项分别代入计算,第一个选项计算结果为5,不符合要求;第二个选项计算得(1+1)%7+1=3,符合要求,继续验证其他值,k=6时该月第6天应为周一对应数字1,计算得(6+1)%7+1=1,符合要求,k=8时对应下一周的周三,结果应为3,计算得(8+1)%7+1=3,符合要求,可确定该表达式正确。故答案为:B。
9. 有如下Python程序段:
def encrypt(code, key):
code _ new = ""
for s in code:
if "0"<= s <= "9":
sl=(ord(s)-ord("0")+ key)% 10 + ord("0")
code _ new += chr(s1)
elif "a"<= s <= "z":
sl=(ord(s)-ord("a")+ key)% 26 + ord("a")
code _ new = chr(s1) + code _ new
else:
s1 = s
code _ new += s1
return code _ new
code = input("code=")
code _ new = encrypt(code, 6)
若code为"Zs2026",执行该程序段后,code _ new的值为( )
A. yZ8682 B. 8682yZ C. 2868yZ D. yZ2868
【答案】A
【解析】
【详解】本题考查自定义加密函数字符处理逻辑相关知识,输入code = "Zs2026",key = 6,逐个字符处理:
1.字符'Z':不属于0-9、小写a-z,直接赋值s1='Z',code_new += 'Z' → code_new = "Z";
2.字符's':小写字母,ord('s')-ord('a')=18,(18 + 6) % 26 = 24,chr(24 + ord('a'))='y',小写字符执行code_new = chr(s1) + code_new,即'y' + "Z" → code_new = "yZ";
3.字符'2':数字,(2 + 6) % 10 = 8,拼接code_new += '8' → "yZ8";
4.字符'0':数字,(0 + 6) % 10 = 6,拼接code_new += '6' → "yZ86";
5.字符'2':数字,(2 + 6) % 10 = 8,拼接code_new += '8' → "yZ868";
6.字符'6':数字,(6 + 6) % 10 = 2,拼接code_new += '2' → "yZ8682"。
因此,本题选择A选项。
10. 队列Q初始时从队首到队尾的元素依次为1、2、3、4、5,栈S初始为空。约定:A操作为出队并入栈;B操作为出队并输出或出栈并输出。经过若干次操作,Q和S都为空且最终输出的元素序列为1,3,2,5,4,则在整个过程中,A操作至少执行了( )次。
A. 1 B. 2 C. 3 D. 4
【答案】B
【解析】
【详解】本题考查栈和队列的基本操作。初始队列Q从队首到队尾依次为1、2、3、4、5,栈S为空,目标输出序列为1、3、2、5、4。
第一个输出元素为1,队首恰好是1,可直接执行B操作出队输出,不需要执行A操作;
接下来要输出3,当前队首是2,需将2出队执行A操作,A操作次数变为1,此时队首变为3,可直接执行B操作出队输出3,无需A操作;
接下来要输出2,2在栈顶,执行B操作出栈输出,此时栈为空,队首为4;
接下来要输出5,当前队首是4,将4出队执行A操作,A操作次数变为2,队首变为5后直接B操作输出5,最后B操作出栈输出4,此时Q和S都为空,得到目标输出序列,若A操作次数少于2次,无法满足两个待暂存元素的存储要求,因此2次是满足要求的最少次数。故答案为:B。
11. 有如下Python程序段:
a=[2,3,1,2,4,4,3,2,5,4]
n=len(a)
i=0
while i < n:
r = i + 1
for j in range(i + 1,n):
if a[j] != a[i]:
a[r] = a[j]
r += 1
n = r
i += 1
print(a[:r])
执行该程序段后,输出的结果是( )
A. [2,3,1,4] B. [2,3,1,2,3,2,5,4] C. [3,1,2,4,5] D. [2,3,1,4,5]
【答案】D
【解析】
【详解】本题考查Python程序执行逻辑与列表去重算法。该程序实现对列表去重,保留元素第一次出现的顺序。初始a为[2,3,1,2,4,4,3,2,5,4],初始n为10,i为0。
第一轮i=0处理元素2,将后续所有不等于2的元素移动到2之后,处理后n更新为8,i自增为1;
第二轮i=1处理元素3,将后续不等于3的元素移动后得到新长度n为7,i自增为2;
第三轮i=2处理元素1,后续所有元素都不等于1,长度不变,i自增为3;
第四轮i=3处理元素4,移动不重复元素后得到新长度n为5,i自增为4;
第五轮i=4处理元素5,后续没有元素,循环结束,最终输出的结果为[2,3,1,4,5],对应第四个选项。故答案为:D。
12. 使用列表d模拟链表结构(节点数大于0),每个节点包含数据区域和指针区域,head为头指针。
有如下 Python程序段:
head=0
p = head
while p != -1 and d[p][1] != -1:
q = d[p][1]
d[p][1] = d[q][1]
d[q][1] = head
head = q
p = d[p][1]
程序执行后,head的值为( )
A. 0 B. 1 C. 3 D. 5
【答案】D
【解析】
【详解】本题考查链表与程序循环执行逻辑相关知识,初始链表存储d=[[12,1],[25,2],[7,3],[31,4],[18,5],[9,6],[40,-1]],head=0,p=0。第一次循环条件p != -1 且 d[p][1]=1 != -1,条件成立;q = d[0][1] = 1;d[0][1] = d[1][1] = 2;d[1][1] = head = 0;head更新为q=1;p = d[0][1] = 2。第二次循环p=2,d[p][1]=3≠-1,条件成立;q = d[2][1] = 3;d[2][1] = d[3][1] = 4;d[3][1] = head = 1;head更新为q=3;p = d[2][1] = 4。第三次循环p=4,d[p][1]=5≠-1,条件成立;q = d[4][1] = 5;d[4][1] = d[5][1] = 6;d[5][1] = head = 3;head更新为q=5;p = d[4][1] = 6。第四次循环p=6,d[p][1]=-1,循环终止,此时head的值为5。因此,本题选择D选项。
二、非选择题(本大题共3小题,其中第13小题10分,第14小题7分,第15小题9分,共26分)
13. 某校餐饮中心为了给师生提供更好的服务引进了智慧餐饮系统。用户通过浏览器访问该系统进行订餐,订餐时用户可以自行选择餐品和用餐时间。系统可以根据订餐数据优化取餐窗口开放数量和后厨备餐时间。食堂中午开放时间为11:30—13:00,用户在食堂入口处进行刷脸认证,显示屏显示该用户所订餐品、取餐窗口等信息。管理员按周导出师生的订餐数据,如下图所示。每一行代表一条订餐记录,包括5个数据项,分别是序号、姓名、到达时间、餐品和用餐日。
该智慧餐饮系统结构示意图如图a所示。
请回答下列问题:
(1)用户到达食堂后,从刷脸认证到显示订餐信息,合理的数据流向是________(单选)。
A. 显示屏→摄像头→数据库→智能终端→Web服务器
B. 摄像头→智能终端→Web服务器→数据库查询→智能终端→显示屏
C. 摄像头→数据库→显示屏→Web服务器→智能终端
D. 浏览器→显示屏→智能终端→摄像头→数据库
(2)下列关于该系统的说法,正确的有________(多选)。
A. 该系统使用了B/S架构
B. 智能终端可以对采集的数据进行初步处理
C. 在概要设计阶段确定数据库的结构
D. IOT模块发生故障后,用户将无法查看历史订餐数据
E. 搭建完成后,需要对该系统的软件、硬件和网络进行测试
(3)系统获取摄像头数据及显示相关用户信息的路由及视图函数部分代码如下:
@ app.route("/ input")
def index():
#获取摄像头数据,代码略
@ app. route("/ view")
def about():
#显示相关用户信息,代码略
显示相关用户信息的视图函数名为________
(4)系统运行时,发现部分师生在食堂入口处刷脸时因为图像质量问题无法被正确识别。请从不同角度提出两项优化措施,以提高系统识别的准确性。
(5)现管理员要统计各餐品一周内的订餐人数,找出“最受欢迎餐品”(一周内订餐人数最多的餐品称为“最受欢迎餐品”)并根据该餐品周一至周五的订餐人数绘制柱形图(如图b所示)。实现上述功能的部分Python程序如下,请选择合适的代码填入划线处(单选)。
import pandas as pd
import matplotlib. pyplot as plt
plt.rcParams["font. sans-serif"]="SimHei" #绘制图表支持显示中文
df= pd. read _ excel("data. xlsx")
df1=______ #统计各餐品的订餐人数
df1= df1. rename(columns={"姓名":"订餐人数"})
#将“姓名”列重命名为“订餐人数”
df2=______
p= df2. iloc[0]["餐品"] #将订餐人数最多的餐品存入变量p
df _p=______
df_ day= df _p. groupby("用餐日",as _index= True).姓名. count()
plt. bar( )
plt. xlabel("用餐日")
plt. ylabel("订餐人数")
plt. ylim (100,160)
plt. title(p+"一周订餐人数分布")
plt. show()
可选代码如下:
A. df[df["餐品"]== p] E.df. groupby("餐品",as _index= False).姓名. count()
B. df1[df1["餐品"]== p] F.df. groupby("用餐日",as _index= False). count()
C. df_ day.用餐日, df _ day.姓名 G.df1. sort _ values("订餐人数",ascending= False)
D. df _day. index, df _ day. values H.df1. sort _ values("订餐人数",ascending= True)
【答案】(1)B (2)ABE
(3)about (4)硬件角度:更换高清摄像头。
数据角度:提供更多的人脸样本数据让系统进行学习。
软件角度:对摄像头采集到的图片先进行预处理、提高图像质量。
认证方式角度:改用饭卡或身份证认证。
或其他等价的答案 (5) ①. E ②. G ③. A ④. D
【解析】
【小问1详解】
本题考查信息系统的数据流向分析。刷脸认证流程中,首先由摄像头采集人脸数据,采集后传输给智能终端,智能终端通过IOT和Wi-Fi将数据传输给Web服务器,Web服务器向数据库发起查询请求获取对应用户的订餐信息,查询结果原路返回给智能终端,最终由智能终端输出到显示屏显示,符合该流程的是第二个选项。故答案为:B。
【小问2详解】
本题考查信息系统架构与开发基础知识。用户通过浏览器访问系统,符合B/S架构的特征,该说法正确;智能终端需要对采集的人脸数据做初步处理后再上传,该说法正确;数据库的结构是在详细设计阶段确定的,概要设计只确定系统模块结构,该说法错误;历史订餐数据存储在Web服务器的数据库中,用户通过互联网浏览器就可以直接访问,IOT模块只是入口智能终端和服务器的通信模块,故障后不影响用户通过浏览器查看历史数据,该说法错误;系统搭建完成后,需要分别对软件功能、硬件设备、网络连接进行测试,该说法正确。故答案为:ABE。
【小问3详解】
本题考查Flask框架中路由与视图函数的基础知识。Flask中def关键字后定义的就是视图函数名,本题中负责显示用户信息的路由/view对应的函数定义为def about(),因此视图函数名就是about。故答案为:about。
【小问4详解】
本题考查信息系统识别准确率的优化方法,可以从多个不同角度提出合理优化措施。故答案为:示例:1.硬件角度:优化食堂入口刷脸区域的补光条件,更换分辨率更高的摄像头;2.软件算法角度:对采集到的人脸图像先进行预处理优化,提升图像质量,优化人脸识别算法模型。(任意两个不同角度的合理答案均可)
【小问5详解】
本题考查Python中pandas数据处理和matplotlib绘图的应用。第一个空需要按餐品分组统计订餐人数,每个订餐记录对应一个用户,统计每个餐品对应的姓名数量即可,因此选E;第二个空需要得到订餐人数降序排序的结果,方便取出订餐人数最多的餐品,因此选G;第三个空需要从原始数据表中筛选出最受欢迎餐品的所有记录,原始数据存储在df中,因此选A;第四个空按用餐日分组时设置了as_index=True,用餐日成为结果的行索引,统计得到的订餐人数存储在值中,绘图时x轴为用餐日对应索引,y轴为订餐人数对应值,因此选D。
14. 某校餐饮中心为了给师生提供更好的服务引进了智慧餐饮系统。用户通过浏览器访问该系统进行订餐,订餐时用户可以自行选择餐品和用餐时间。系统可以根据订餐数据优化取餐窗口开放数量和后厨备餐时间。食堂中午开放时间为11:30—13:00,用户在食堂入口处进行刷脸认证,显示屏显示该用户所订餐品、取餐窗口等信息。管理员按周导出师生的订餐数据,如下图所示。每一行代表一条订餐记录,包括5个数据项,分别是序号、姓名、到达时间、餐品和用餐日。
食堂每个窗口每分钟可以为一名师生提供出餐服务。为了对出餐窗口进行调度,现需要寻找最早出现的最长超负荷运行时间段。超负荷运行指当前开放的窗口数量小于当前等待取餐的学生数量。
(1)从订餐数据统计出当天食堂开放后前10分钟的到达人数为“7,9,5,5,4,5,6,4,6,2”,默认开放6个窗口,则超负荷运行的总分钟数是________。
(2)编写Python程序实现读取某日订餐数据,输出各时刻到达人数和需要加开窗口时间段。程序运行结果如图a所示。
上述功能的部分Python程序如下,请在划线处填入合适的代码。
flow=[0]*91
打开数据文件
f-open("data. txt", encoding="utf-8")
line=f. readline()
while line:
x=list(line. strip().split(",")) #按逗号分割每行数据
t=x[2]
h, m=int(t[:2]), int(t[3:])
minutes=(h-11)*60+m-30 #计算相对于11:30的分钟偏移量
______
line=f.readline()
print("各时刻到达人数:")
print(flow)
maxlen=0; num=6
cnt, left, start=0,0,-1
i=j=0
while i<len(flow):
left=left+ flow[i]-num
#队伍剩余人数=上一分钟剩余人数+这一分钟新来的人数-窗口这一分钟处理的人数
if left<=0:
left=0
if left>0:
if cnt==0:
______
cnt+=1
if cnt>maxlen:
maxlen=cnt
start=j
else:
______
i+=1
if start!=-1:
#输出需要加开出餐窗口的时间段,代码略
【答案】(1)4 (2) ①. flow[minutes] +=1 ②. j = i ③. cnt =0
【解析】
【详解】本题考查逻辑计算能力与Python程序分析能力。
(1)默认开放6个窗口,每分钟可处理6人,剩余等待人数=上一分钟剩余人数+当前分钟到达人数-每分钟处理人数,剩余人数大于0即为超负荷,逐分钟计算:第1分钟剩余为0+7-6=1>0,记为超负荷;第2分钟剩余为1+9-6=4>0,记为超负荷;第3分钟剩余为4+5-6=3>0,记为超负荷;第4分钟剩余为3+5-6=2>0,记为超负荷;第5分钟剩余为2+4-6=0,不是超负荷;第6到第10分钟剩余人数均不大于0,都不是超负荷,因此总超负荷分钟数为4。
(2)①处flow数组用来统计每个分钟偏移对应的到达人数,每读取一条订餐记录,对应分钟位置的到达人数需要加1,因此填入flow[minutes] +=1;②处当前为超负荷状态,且cnt为0说明这是一个新的超负荷时间段的开始,需要记录该时间段的起始位置j,当前遍历的分钟索引为i,因此填入j = i;③处当前剩余人数left小于等于0,超负荷结束,需要将当前超负荷时长计数器cnt重置为0,因此填入cnt = 0。
15. 某校餐饮中心为了给师生提供更好的服务引进了智慧餐饮系统。用户通过浏览器访问该系统进行订餐,订餐时用户可以自行选择餐品和用餐时间。系统可以根据订餐数据优化取餐窗口开放数量和后厨备餐时间。食堂中午开放时间为11:30—13:00,用户在食堂入口处进行刷脸认证,显示屏显示该用户所订餐品、取餐窗口等信息。管理员按周导出师生的订餐数据,如下图所示。每一行代表一条订餐记录,包括5个数据项,分别是序号、姓名、到达时间、餐品和用餐日。
该校餐饮中心继续利用该系统对后厨备餐效率进行跟踪分析。现实中后厨在备餐的过程中一般会遵循以下策略:①厨师按照订餐数据中的到达时间的先后顺序依次备餐;②为保证烹饪过程的连贯,每种餐品都由固定的一组厨师进行烹饪;③每个厨师每次可以同时烹饪k份相同类型的餐品;④每次安排最早结束的厨师进行烹饪任务,如存在多个厨师则选择编号最小的厨师。
(1)订餐数据里到达时间前20的数据如表a所示,后厨人员配置及餐品制作时间如表b所示,若后厨统一从11:30开始备餐,k=3,则唐蕊同学订的炒面实际完成的时间是______。
姓名
潘蓉
叶波
朱萍
傅骏
秦艳
黎艳
贺思
侯杰
黎蓉
张豪
到达时间
11:30
11:30
11:30
11:30
11:30
11:30
11:30
11:31
11:31
11:31
餐品
炒面
牛肉面
炒面
牛肉面
炒面
炒饭
炒饭
牛肉面
炒饭
炒饭
姓名
林军
沈雨
郝雨
韩洋
孟逸
侯凯
严飞
唐平
傅欣
唐蕊
到达时间
11:31
11:31
11:31
11:31
11:31
11:31
11:32
11:32
11:32
11:32
餐品
炒面
牛肉面
盖浇饭
炒饭
盖浇饭
牛肉面
炒面
炒面
盖浇饭
炒面
表a
餐品名称
制作时间(分钟)
厨师人数
厨师编号
牛肉面
8
2
1
2
盖浇饭
10
3
1
2
3
炒面
8
3
1
2
3
炒饭
6
2
1
2
表b
(2)定义如下自定义函数 insert_ node(h, index),参数h是列表a中其中一段链表的头指针,该链表已按到达时间进行升序排列。函数的功能是将index节点插入到链表中,并维持升序排列,同时返回新的h。
def insert node(h, index):
q = p = h
while a[p][0] <= a[index][0]: #1
q = p #2
p = a[p][2] #3
if p == h:
h = index
else:
a[q][2] = index #4
a[index][2] = p #5
return h
该程序存在两处逻辑错误,导致功能无法实现,存在错误的语句是______(填语句编号)
(3)为确保每位师生到达食堂后都能及时领到所订的餐品,后厨需要提前进行备餐。编写Python程序,实现读取当日订餐数据和一次可同时烹饪的份数k,输出每种餐品的备餐量及需要提前多少时间开始备餐。程序运行结果如图c所示。
部分程序代码如下,请在划线处填入合适的代码。
'"定义函数find_ cooker(next_ time),函数的功能为在next_ time列表中寻找最早结束当前烹饪任务的厨师,并返回该厨师索引,代码略'"
a=[]
hlist={"牛肉面":-1,"盖浇饭":-1,"炒面":-1,"炒饭":-1}
cook time = {"牛肉面":8,"盖浇饭":10,"炒面":8,"炒饭":6} # 各餐品制作时间(分钟/份)
cookers count = {"牛肉面":2,"盖浇饭":3,"炒面":3,"炒饭":2} # 各餐品厨师人数
'"从data. txt文件中读取订餐数据,经过处理后依次添加到列表a,列表a中每个数据元素包含三个数据项,分别是到达时间(已经转换成距离11:30的分钟数)、餐品名称和-1,例如[26,'牛肉面',-1],代码略。'"
for i in range(len(a)):
if hlist[a[i][1]]==-1:
hlist[a[i][1]]=i
else:
hlist[a[i][1]]=______
k=int(input("一次可以同时烹饪的餐品数量是:"))
max_ delay=0 #最大延迟时间(完成时间-到达时间)
#统计每种餐品的订单数量(备餐量)
meal_ counts={}
for d, h in hlist. items():
if h==-1:
meal_ counts[d]=0
continue
count=0
p=h
while p!=-1:
count+=1
p=a[p][2]
meal_ counts[d]=count
"输出各餐品需要的备餐量,代码略。"
for d, h in hlist. items():
if h==-1:
continue
next_ time=[0]*______ #初始化next_ time列表
p=h
cnt=0
while p!=-1:
if______:
cooker=find_ cooker(next_ time)
next_ time[cooker]+=cook_ time[d]
cnt+=1
#计算当前订单的完成时间与到达时间的差值
delay=next_ time[cooker]-a[p][0]
if delay>max_ delay:
max_ delay=delay
p=a[p][2]
if max_ delay>0:
print("需要提前",max_ delay,"分钟开始备餐,才能保证所有订单在到达前完成。")
else:
print("无需提前备餐,当前安排下所有订单都能按时完成。")
【答案】(1)11:38
(2)1,5 (3) ①. insert_ node(hlist[a[i][1]],i) ②. cookers_count[d] ③. cnt % k ==0
【解析】
【详解】本题考查贪心算法策略应用与Python程序逻辑分析。
(1)先按到达时间顺序统计炒面,唐蕊是第7份炒面,k=3即每3份安排一次烹饪,炒面共3名厨师,都在11:30开始备餐,制作一份炒面需8分钟,第一组3份安排厨师1,结束时间11:38;第二组3份安排厨师2,结束时间11:38;唐蕊属于第三组,选择最早结束的编号最小的空闲厨师3,11:30开始制作,8分钟后完成,因此完成时间为11:38。
(2)分析插入链表节点的函数逻辑,语句1的循环条件没有考虑p遍历到链表尾即p=-1的情况,此时访问a[p][0]会出错,存在逻辑错误;当插入节点到链表头部时,仅修改了头指针,没有给新节点设置后继原头节点,而设置新节点后继的操作仅在else分支执行,因此语句5也存在错误,错误语句为1和5。
(3)①hlist保存每种餐品的链表头指针,需要将新节点i插入到对应餐品的链表中,调用insert_node函数,填入insert_node(hlist[a[i][1]],i)。②next_time保存当前餐品所有厨师的结束时间,列表长度等于当前餐品的厨师人数,填入cookers_count[d]。③每k份餐品安排一次烹饪,cnt统计当前已处理的订单数,当cnt刚好是k的倍数时需要安排新烹饪,因此条件为cnt % k ==0。
第1页/共1页
学科网(北京)股份有限公司
$
舟山市2025学年第二学期期末检测
高二技术试题卷
考生须知:
本试题卷分两部分,即:第一部分信息技术(50分),第二部分通用技术(50分)。全卷共14页,第一部分信息技术1至8页,第二部分通用技术9至14页。满分100分,考试时间90分钟。
答题前,考生务必将自己的姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸上,并按规定用笔将所有试题的答案涂、写在答题纸上,答案写在本试题卷上无效。
选择题的答案须用2B铅笔将答题纸上对应题目的答案标号涂黑,如要改动,须将原填涂处用橡皮擦擦净。非选择题的答案须用黑色字迹的签字笔或钢笔写在答题纸上相应区域内,作图时可使用2B铅笔,确定后须用黑色字迹的签字笔或钢笔描黑。
第一部分 信息技术(共50分)
一、选择题(本大题共12小题,每小题2分,共24分,每小题列出的四个备选项中只有一个是符合题目要求的,不选、错选、多选均不得分。)
阅读下列材料,完成下面小题:
2026年春晚使用了人工智能媒体应用平台,其中的“央视听媒体大模型2.0”基于海量数据和生成式人工智能技术构建。该平台可实现虚拟影像和实景舞台无缝融合,数字人演员和真人演员可在不同场景中合作表演。5G网络支持高清视频流的全球分发,确保低延迟、高质量的观看体验。
1. 下列关于该平台中数据与信息的说法,正确的是( )
A. 5G网络的使用使得信息可以脱离载体
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. 对同一个采样点分别采用8位和24位量化,其容量之比为1:3
7. 某算法的部分流程图如图所示,输入下列数据,输出值与其他三项不同的是( )
A. 11 B. 13 C. 23 D. 25
8. 用数字1到7分别表示周一到周日,假设某月第一天是周三,则计算该月第k天是周几的Python表达式为( )
A. (k+3)% 7+1 B. (k+1)% 7+1 C. (k+1)% 7+3 D. (k+2)% 7+1
9. 有如下Python程序段:
def encrypt(code, key):
code _ new = ""
for s in code:
if "0"<= s <= "9":
sl=(ord(s)-ord("0")+ key)% 10 + ord("0")
code _ new += chr(s1)
elif "a"<= s <= "z":
sl=(ord(s)-ord("a")+ key)% 26 + ord("a")
code _ new = chr(s1) + code _ new
else:
s1 = s
code _ new += s1
return code _ new
code = input("code=")
code _ new = encrypt(code, 6)
若code为"Zs2026",执行该程序段后,code _ new的值为( )
A. yZ8682 B. 8682yZ C. 2868yZ D. yZ2868
10. 队列Q初始时从队首到队尾的元素依次为1、2、3、4、5,栈S初始为空。约定:A操作为出队并入栈;B操作为出队并输出或出栈并输出。经过若干次操作,Q和S都为空且最终输出的元素序列为1,3,2,5,4,则在整个过程中,A操作至少执行了( )次。
A. 1 B. 2 C. 3 D. 4
11. 有如下Python程序段:
a=[2,3,1,2,4,4,3,2,5,4]
n=len(a)
i=0
while i < n:
r = i + 1
for j in range(i + 1,n):
if a[j] != a[i]:
a[r] = a[j]
r += 1
n = r
i += 1
print(a[:r])
执行该程序段后,输出的结果是( )
A. [2,3,1,4] B. [2,3,1,2,3,2,5,4] C. [3,1,2,4,5] D. [2,3,1,4,5]
12. 使用列表d模拟链表结构(节点数大于0),每个节点包含数据区域和指针区域,head为头指针。
有如下 Python程序段:
head=0
p = head
while p != -1 and d[p][1] != -1:
q = d[p][1]
d[p][1] = d[q][1]
d[q][1] = head
head = q
p = d[p][1]
程序执行后,head的值为( )
A. 0 B. 1 C. 3 D. 5
二、非选择题(本大题共3小题,其中第13小题10分,第14小题7分,第15小题9分,共26分)
13. 某校餐饮中心为了给师生提供更好的服务引进了智慧餐饮系统。用户通过浏览器访问该系统进行订餐,订餐时用户可以自行选择餐品和用餐时间。系统可以根据订餐数据优化取餐窗口开放数量和后厨备餐时间。食堂中午开放时间为11:30—13:00,用户在食堂入口处进行刷脸认证,显示屏显示该用户所订餐品、取餐窗口等信息。管理员按周导出师生的订餐数据,如下图所示。每一行代表一条订餐记录,包括5个数据项,分别是序号、姓名、到达时间、餐品和用餐日。
该智慧餐饮系统结构示意图如图a所示。
请回答下列问题:
(1)用户到达食堂后,从刷脸认证到显示订餐信息,合理的数据流向是________(单选)。
A. 显示屏→摄像头→数据库→智能终端→Web服务器
B. 摄像头→智能终端→Web服务器→数据库查询→智能终端→显示屏
C. 摄像头→数据库→显示屏→Web服务器→智能终端
D. 浏览器→显示屏→智能终端→摄像头→数据库
(2)下列关于该系统的说法,正确的有________(多选)。
A. 该系统使用了B/S架构
B. 智能终端可以对采集的数据进行初步处理
C. 在概要设计阶段确定数据库的结构
D. IOT模块发生故障后,用户将无法查看历史订餐数据
E. 搭建完成后,需要对该系统的软件、硬件和网络进行测试
(3)系统获取摄像头数据及显示相关用户信息的路由及视图函数部分代码如下:
@ app.route("/ input")
def index():
#获取摄像头数据,代码略
@ app. route("/ view")
def about():
#显示相关用户信息,代码略
显示相关用户信息的视图函数名为________
(4)系统运行时,发现部分师生在食堂入口处刷脸时因为图像质量问题无法被正确识别。请从不同角度提出两项优化措施,以提高系统识别的准确性。
(5)现管理员要统计各餐品一周内的订餐人数,找出“最受欢迎餐品”(一周内订餐人数最多的餐品称为“最受欢迎餐品”)并根据该餐品周一至周五的订餐人数绘制柱形图(如图b所示)。实现上述功能的部分Python程序如下,请选择合适的代码填入划线处(单选)。
import pandas as pd
import matplotlib. pyplot as plt
plt.rcParams["font. sans-serif"]="SimHei" #绘制图表支持显示中文
df= pd. read _ excel("data. xlsx")
df1=______ #统计各餐品的订餐人数
df1= df1. rename(columns={"姓名":"订餐人数"})
#将“姓名”列重命名为“订餐人数”
df2=______
p= df2. iloc[0]["餐品"] #将订餐人数最多的餐品存入变量p
df _p=______
df_ day= df _p. groupby("用餐日",as _index= True).姓名. count()
plt. bar( )
plt. xlabel("用餐日")
plt. ylabel("订餐人数")
plt. ylim (100,160)
plt. title(p+"一周订餐人数分布")
plt. show()
可选代码如下:
A. df[df["餐品"]== p] E.df. groupby("餐品",as _index= False).姓名. count()
B. df1[df1["餐品"]== p] F.df. groupby("用餐日",as _index= False). count()
C. df_ day.用餐日, df _ day.姓名 G.df1. sort _ values("订餐人数",ascending= False)
D. df _day. index, df _ day. values H.df1. sort _ values("订餐人数",ascending= True)
14. 某校餐饮中心为了给师生提供更好的服务引进了智慧餐饮系统。用户通过浏览器访问该系统进行订餐,订餐时用户可以自行选择餐品和用餐时间。系统可以根据订餐数据优化取餐窗口开放数量和后厨备餐时间。食堂中午开放时间为11:30—13:00,用户在食堂入口处进行刷脸认证,显示屏显示该用户所订餐品、取餐窗口等信息。管理员按周导出师生的订餐数据,如下图所示。每一行代表一条订餐记录,包括5个数据项,分别是序号、姓名、到达时间、餐品和用餐日。
食堂每个窗口每分钟可以为一名师生提供出餐服务。为了对出餐窗口进行调度,现需要寻找最早出现的最长超负荷运行时间段。超负荷运行指当前开放的窗口数量小于当前等待取餐的学生数量。
(1)从订餐数据统计出当天食堂开放后前10分钟的到达人数为“7,9,5,5,4,5,6,4,6,2”,默认开放6个窗口,则超负荷运行的总分钟数是________。
(2)编写Python程序实现读取某日订餐数据,输出各时刻到达人数和需要加开窗口时间段。程序运行结果如图a所示。
上述功能的部分Python程序如下,请在划线处填入合适的代码。
flow=[0]*91
打开数据文件
f-open("data. txt", encoding="utf-8")
line=f. readline()
while line:
x=list(line. strip().split(",")) #按逗号分割每行数据
t=x[2]
h, m=int(t[:2]), int(t[3:])
minutes=(h-11)*60+m-30 #计算相对于11:30的分钟偏移量
______
line=f.readline()
print("各时刻到达人数:")
print(flow)
maxlen=0; num=6
cnt, left, start=0,0,-1
i=j=0
while i<len(flow):
left=left+ flow[i]-num
#队伍剩余人数=上一分钟剩余人数+这一分钟新来的人数-窗口这一分钟处理的人数
if left<=0:
left=0
if left>0:
if cnt==0:
______
cnt+=1
if cnt>maxlen:
maxlen=cnt
start=j
else:
______
i+=1
if start!=-1:
#输出需要加开出餐窗口的时间段,代码略
15. 某校餐饮中心为了给师生提供更好的服务引进了智慧餐饮系统。用户通过浏览器访问该系统进行订餐,订餐时用户可以自行选择餐品和用餐时间。系统可以根据订餐数据优化取餐窗口开放数量和后厨备餐时间。食堂中午开放时间为11:30—13:00,用户在食堂入口处进行刷脸认证,显示屏显示该用户所订餐品、取餐窗口等信息。管理员按周导出师生的订餐数据,如下图所示。每一行代表一条订餐记录,包括5个数据项,分别是序号、姓名、到达时间、餐品和用餐日。
该校餐饮中心继续利用该系统对后厨备餐效率进行跟踪分析。现实中后厨在备餐的过程中一般会遵循以下策略:①厨师按照订餐数据中的到达时间的先后顺序依次备餐;②为保证烹饪过程的连贯,每种餐品都由固定的一组厨师进行烹饪;③每个厨师每次可以同时烹饪k份相同类型的餐品;④每次安排最早结束的厨师进行烹饪任务,如存在多个厨师则选择编号最小的厨师。
(1)订餐数据里到达时间前20的数据如表a所示,后厨人员配置及餐品制作时间如表b所示,若后厨统一从11:30开始备餐,k=3,则唐蕊同学订的炒面实际完成的时间是______。
姓名
潘蓉
叶波
朱萍
傅骏
秦艳
黎艳
贺思
侯杰
黎蓉
张豪
到达时间
11:30
11:30
11:30
11:30
11:30
11:30
11:30
11:31
11:31
11:31
餐品
炒面
牛肉面
炒面
牛肉面
炒面
炒饭
炒饭
牛肉面
炒饭
炒饭
姓名
林军
沈雨
郝雨
韩洋
孟逸
侯凯
严飞
唐平
傅欣
唐蕊
到达时间
11:31
11:31
11:31
11:31
11:31
11:31
11:32
11:32
11:32
11:32
餐品
炒面
牛肉面
盖浇饭
炒饭
盖浇饭
牛肉面
炒面
炒面
盖浇饭
炒面
表a
餐品名称
制作时间(分钟)
厨师人数
厨师编号
牛肉面
8
2
1
2
盖浇饭
10
3
1
2
3
炒面
8
3
1
2
3
炒饭
6
2
1
2
表b
(2)定义如下自定义函数 insert_ node(h, index),参数h是列表a中其中一段链表的头指针,该链表已按到达时间进行升序排列。函数的功能是将index节点插入到链表中,并维持升序排列,同时返回新的h。
def insert node(h, index):
q = p = h
while a[p][0] <= a[index][0]: #1
q = p #2
p = a[p][2] #3
if p == h:
h = index
else:
a[q][2] = index #4
a[index][2] = p #5
return h
该程序存在两处逻辑错误,导致功能无法实现,存在错误的语句是______(填语句编号)
(3)为确保每位师生到达食堂后都能及时领到所订的餐品,后厨需要提前进行备餐。编写Python程序,实现读取当日订餐数据和一次可同时烹饪的份数k,输出每种餐品的备餐量及需要提前多少时间开始备餐。程序运行结果如图c所示。
部分程序代码如下,请在划线处填入合适的代码。
'"定义函数find_ cooker(next_ time),函数的功能为在next_ time列表中寻找最早结束当前烹饪任务的厨师,并返回该厨师索引,代码略'"
a=[]
hlist={"牛肉面":-1,"盖浇饭":-1,"炒面":-1,"炒饭":-1}
cook time = {"牛肉面":8,"盖浇饭":10,"炒面":8,"炒饭":6} # 各餐品制作时间(分钟/份)
cookers count = {"牛肉面":2,"盖浇饭":3,"炒面":3,"炒饭":2} # 各餐品厨师人数
'"从data. txt文件中读取订餐数据,经过处理后依次添加到列表a,列表a中每个数据元素包含三个数据项,分别是到达时间(已经转换成距离11:30的分钟数)、餐品名称和-1,例如[26,'牛肉面',-1],代码略。'"
for i in range(len(a)):
if hlist[a[i][1]]==-1:
hlist[a[i][1]]=i
else:
hlist[a[i][1]]=______
k=int(input("一次可以同时烹饪的餐品数量是:"))
max_ delay=0 #最大延迟时间(完成时间-到达时间)
#统计每种餐品的订单数量(备餐量)
meal_ counts={}
for d, h in hlist. items():
if h==-1:
meal_ counts[d]=0
continue
count=0
p=h
while p!=-1:
count+=1
p=a[p][2]
meal_ counts[d]=count
"输出各餐品需要的备餐量,代码略。"
for d, h in hlist. items():
if h==-1:
continue
next_ time=[0]*______ #初始化next_ time列表
p=h
cnt=0
while p!=-1:
if______:
cooker=find_ cooker(next_ time)
next_ time[cooker]+=cook_ time[d]
cnt+=1
#计算当前订单的完成时间与到达时间的差值
delay=next_ time[cooker]-a[p][0]
if delay>max_ delay:
max_ delay=delay
p=a[p][2]
if max_ delay>0:
print("需要提前",max_ delay,"分钟开始备餐,才能保证所有订单在到达前完成。")
else:
print("无需提前备餐,当前安排下所有订单都能按时完成。")
第1页/共1页
学科网(北京)股份有限公司
$