精品解析:2027届浙江嘉兴市高三上学期一模信息技术试题

标签:
精品解析文字版答案
| 2份
| 26页
| 15人阅读
| 0人下载

内容正文:

2026学年第一学期高三教学质量检测 技术 试题卷 第一部分 信息技术(共50分) 一、单选题(本大题共12小题,每小题2分,共24分) 阅读材料,完成下面小题: 某校“智慧校园一卡通”系统集成了就餐、超市、门禁考勤等功能。进入校门时用人脸识别核验身份,访客可凭临时通行二维码进校;食堂智能结算台支持刷卡结算,实时统计菜品销量。各终端通过Wi-Fi连接服务器,系统每日自动生成报表,管理员可通过APP查看数据。家长可通过APP查看其学生的签到及消费记录。 1. 下列关于该系统中数据的说法,正确的是( ) A. 系统中的数据都是从外部获取的 B. 人脸图像和考勤日志都属于结构化数据 C. 系统生成报表后,提升了原始数据的价值 D. 食堂就餐数据的统计报表可用于优化菜品结构 2. 下列关于该系统组成与功能的描述,正确的是( ) A. 校园IC卡属于输入设备 B. 外来访客不属于该系统的用户 C. 人脸识别实现了身份认证功能 D. 系统的升级只是修复系统漏洞 3. 下列关于该系统中硬件与软件的描述,正确的是( ) A. 智能结算台具有数据处理功能 B. 用户终端里的软件都是应用软件 C. IC卡里存储的身份信息属于硬件 D. 服务器的性能对系统运行没有影响 4. 关于信息安全与信息社会责任,下列行为合理的是( ) ①对考勤记录表等重要数据定期备份 ②管理员将学生信息出售给校外培训机构 ③设置家长用户组,该组具有相同的功能权限 ④管理员为提升访问速度,直接关闭服务器上的防火墙 A. ①② B. ①③ C. ②④ D. ③④ 5. 下列关于该系统网络技术的分析,正确的是( ) A. 结算台上传销量数据,不需要传输介质 B. 校园内各人脸识别终端应设置成相同的IP地址 C. 管理员通过手机APP查看数据只能使用移动通信网络 D. 终端与服务器之间进行数据传输,需要遵循网络通信协议 【答案】1. D 2. C 3. A 4. B 5. D 【解析】 【1题详解】 本题考查大数据与数据价值相关知识点。选项1错误,系统内也会自主生成如考勤日志这类内部数据,并非所有数据都从外部获取;选项2错误,人脸图像属于非结构化数据,不属于结构化数据范畴;选项3错误,生成报表是对原始数据加工处理得到衍生数据,并未提升原始数据本身的价值;选项4正确,食堂就餐数据的统计报表可以直观反映不同菜品的受欢迎程度,能够用于优化菜品结构。故答案为:D。 【2题详解】 本题考查信息系统的组成与功能相关知识点。选项1错误,校园IC卡是身份信息的存储载体,不属于输入设备;选项2错误,外来访客是该系统的使用对象之一,属于系统用户;选项3正确,人脸识别通过核验人脸信息确认使用者身份,实现了身份认证功能;选项4错误,系统升级除了修复漏洞,还可以新增功能、优化性能等,并非仅修复漏洞。故答案为:C。 【3题详解】 本题考查信息系统的硬件与软件相关知识点。选项1正确,智能结算台可以完成刷卡结算、统计菜品销量等操作,具备数据处理功能;选项2错误,用户终端里除了应用软件,还有操作系统这类系统软件,并非全部都是应用软件;选项3错误,IC卡里存储的身份信息属于数据内容,不属于硬件范畴;选项4错误,服务器是系统的核心数据处理和存储节点,其性能直接影响系统的整体运行效率。故答案为:A。 【4题详解】 本题考查信息安全与信息社会责任相关知识点。行为①对重要数据定期备份,可以防范数据丢失风险,是合理的安全操作;行为②出售学生信息属于泄露用户隐私的违法行为,不符合信息社会责任要求;行为③设置家长用户组统一分配权限,既可以满足家长查看对应学生信息的需求,也便于权限管理,操作合理;行为④关闭防火墙会大幅降低服务器的安全性,极易遭受网络攻击,是不合理操作。因此合理的是①③。故答案为:B。 【5题详解】 本题考查信息系统的网络通信相关知识点。选项1错误,结算台通过Wi-Fi上传数据,无线电波就是对应的传输介质,数据传输不可能脱离传输介质;选项2错误,同一局域网内的所有终端IP地址必须唯一,否则会出现IP地址冲突,无法正常通信;选项3错误,管理员的手机也可以连接校园Wi-Fi来访问系统查看数据,并非只能使用移动通信网络;选项4正确,不同设备之间进行网络数据传输,必须遵循统一的网络通信协议才能完成交互。故答案为:D。 6. 某环境传感器采集三类信息:5种天气类型、2种设备工作状态、6种数据质量等级。分别对三类信息进行二进制编码,再从左到右依次拼接成一个7位二进制数。现采集到2个十六进制信号:4BH和53H,这2个信号所表示的含义差异有( ) A. 天气类型、工作状态 B. 工作状态、数据质量等级 C. 天气类型、数据质量等级 D. 天气类型、工作状态、数据质量等级 【答案】A 【解析】 【详解】本题考查二进制编码与数制转换的应用能力。首先计算三类信息的最少二进制编码位数:5种天气类型至少需要3位二进制(2^3=8≥5),2种设备工作状态至少需要1位二进制(2^1=2≥2),6种数据质量等级至少需要3位二进制(2^3=8≥6),3+1+3=7位,刚好符合拼接后7位二进制的要求,拼接顺序为从左到右依次是3位天气编码、1位工作状态编码、3位数据质量等级编码。接下来将两个十六进制信号转换为7位二进制:4BH转换为二进制是1001011,拆分后天气编码为100,工作状态编码为1,数据质量等级编码为011;53H转换为二进制是1010011,拆分后天气编码为101,工作状态编码为0,数据质量等级编码为011。对比可知两个信号的数据质量等级编码一致,天气类型和工作状态的编码存在差异。故答案为:A。 7. 某校开展“校园吉尼斯”挑战赛,n名选手的成绩已按从小到大顺序存入列表a[0. .n-1]中。现需统计成绩大于k的选手数。算法描述如下: ①初始化查找区间:左端点i = 0,右端点j = n - 1; ②当i ≤ j时,重复执行③~④步;否则跳转至第⑤步; ③计算中间位置m:对i、j的平均值向下取整; ④若a[m] ≤ k,说明大于k的元素在m的右侧,更新i = m + 1;否则,更新j = m - 1; ⑤循环结束,n - i即为成绩大于k的选手总人数。 关于该算法,下列说法正确的是( ) A. 查找过程中i与j的值始终不同 B. 最优情况下,该算法需要比较n次 C. 若k大于所有选手的成绩,则统计结果为n - 1 D. 若存在大于k的成绩,则算法运行结束后,a[i]为第一个大于k的成绩 【答案】D 【解析】 【详解】本题考查有序数组的二分查找算法的逻辑与特性分析。选项A,当查找区间仅剩一个元素时,i和j的值会相等,并非始终不同,该说法错误。选项B,该算法是二分查找,最优情况下仅需比较1次即可得到结果,无需比较n次,该说法错误。选项C,若k大于所有选手的成绩,循环结束后i的值会变为n,统计结果n-i为0,而非n-1,该说法错误。选项D,该算法的核心是定位第一个大于k的元素的下标,当存在大于k的成绩时,循环结束后i恰好指向第一个大于k的元素的位置,a[i]就是第一个大于k的成绩,该说法正确。故答案为:D 8. 某二叉树的中序遍历序列为ABCDE,后序遍历序列为ACEDB,其节点的值满足VA<VB<VC<VD<VE。现向该二叉树新增节点X,满足VC<VX<VD,要求添加后二叉树的中序遍历序列仍保持升序,则新的后序遍历序列为( ) A. AXCEDB B. XACEDB C. ACXEDB D. ACEXDB 【答案】A 【解析】 【详解】本题考查的是二叉树的遍历。由中序遍历序列和后序遍历序列,可知原二叉树如下: 题目要求添加后中序仍升序,且满足VC<VX<VD,中序遍历顺序是左-根-右,因此X在中序里的位置必然在C和D之间。结合原树结构,C没有子节点,X只能作为C的右孩子。插入后的二叉树如下: 其后序遍历为:AXCEDB,故本题应选A。 9. 队列q队首到队尾的元素依次为“3,1,4,2”,栈s为空。约定:H操作为出队后入栈,T操作为出栈后入队。为了使队列q队首到队尾排列为“1,2,3,4”,需要的T操作至少( ) A. 4次 B. 5次 C. 6次 D. 7次 【答案】B 【解析】 【详解】本题考查队列与栈的基本操作特性的应用。要得到最终序列 1, 2, 3, 4,我们逐个分析元素:初始序列:3, 1, 4, 2。 目标1:让 1 跑到最前面。 目前 3 挡在 1 的前面,所以 3 必须被移走。执行 H,把 3 压入栈。此时队列为 1, 4, 2,栈为 [3]。 目标2:让 2 排在 4 的前面。 目前 4 挡在 2 前面,所以 4 必须被移走。但 1 在 4 前面,为了把 4 压入栈,必须先把 1 也压入栈。连续执行两次 H,把 1 和 4 压入栈。此时队列为 2,栈为 [3, 1, 4](栈顶是 4)。 目标3:出栈并调整到最终顺序。 现在队列里只剩下 2,但我们需要 1 排在 2 前面,所以 1 必须比 2 先出栈(T操作)并进入队列。当前栈顶是 4,为了出栈 1,必须先执行 T 把 4 出栈,再执行 T 把 1 出栈。执行 2 次 T 后:队列为 2, 4, 1,栈为 [3]。此时队列头是 2,但我们希望在最终的队列中 1 在 2 前面。所以必须把 2 也移到后面去。执行 H 把 2 压入栈(此时栈为 [3, 2]),紧接着执行 T 把 2 出栈放入队尾。此时队列为 4, 1, 2,栈为 [3]。 执行 T 把 3 出栈放入队尾。此时队列为 4, 1, 2, 3,栈清空。 目标4:把开头的 4 移到最后。 执行 H 把 4 压入栈,再执行 T 把 4 出栈放入队尾。此时队列变为 1, 2, 3, 4。 统计 T 操作:出栈 4、出栈 1、出栈 2、出栈 3、出栈 4,共 5次。故选B。 10. 有如下程序段: # 字符串s初始化长度为n(n>5)的任意字符串,代码略。 left, right = 0, n - 1 res = 0 while left < right: if s[left] != s[right]: res = left left += 1 else: res = right right -= 1 执行该程序段后,res的值为3,则下列表达式中,值一定为True的表达式个数为( ) ① left > right ② s[0] != s[n - 1] ③ left <= 4 A. 0 B. 1 C. 2 D. 3 【答案】B 【解析】 【详解】本题考查双指针遍历字符串的逻辑分析能力。分析①:程序每轮比较当前 left 与 right 位置的字符:若 s[left] != s[right],则 res = left,然后 left += 1;若 s[left] == s[right],则 res = right,然后 right -= 1。每次循环后,left 与 right 的距离都会减少 1,直到二者相等,①一定为False。分析②:存在反例:比如初始字符串s = "aabbaa"(n=6),首尾字符相等,但模拟程序后仍可能得到 res = 3。我们可以构造出s[0] == s[n-1]但最终res=3的合法场景,因此该表达式不一定为True。分析③:res最终为3,res的取值要么是left要么是right。如果res是left,那么left等于3;如果res是right,那么right等于3,此时循环执行过程中left必然小于等于right也就是3,因此left最大也不会超过4,left<=4一定成立,③一定为True。综上,一定为True的表达式有1个。故答案为:B。 11. 在升序列表中插入两个值,Python程序段如下: data = [1, 8, 46, 69] small = 6 big = 88 i = len(data) - 1 data += [0,0] #在列表末尾追加两个元素 m = 0 while i >= 0 and data[i] > small: if data[i] > big: data[i+2] = data[i] else: data[i+1] = data[i] m+= 1 i -= 1 data[i+1] = small data[i+m+2] = big print(m) 程序运行结束后,输出的值为( ) A. 0 B. 1 C. 2 D. 3 【答案】D 【解析】 【详解】本题考查Python列表插入元素的逻辑执行流程分析。初始data为[1,8,46,69],small=6,big=88,i初始值为3,追加两个0后data变为[1,8,46,69,0,0],m初始为0。进入while循环,循环条件是i>=0且data[i]>small: 第一次循环,i=3,data[3]=69>6,同时69不大于88,执行data[4]=69,m自增为1,i变为2。 第二次循环,i=2,data[2]=46>6,46不大于88,执行data[3]=46,m自增为2,i变为1。 第三次循环,i=1,data[1]=8>6,8不大于88,执行data[2]=8,m自增为3,i变为0。此时i=0,data[0]=1,不满足data[i]>small的条件,循环终止。最终m的值为3。故答案为:D。 12. 某音乐播放器用链表d(元素格式为[歌曲编号,后继偏移量])存储播放列表(播放列表首元素的前驱、末元素的后继均为-1),以下程序模拟从最后一首歌开始,连续执行k次"上一首"后,输出当前播放的歌曲编号。 d = [[1, -2], [2, 4], [3, -1], [4, 3], [5, -3]] head = 1; k = 3 pre, cur = - 1, head while cur != -1: tmp = pre pre = cur cur = tmp + d[cur][1] _____________________ for i in range(k): tmp = pre pre = cur _____________________ print (d[cur][0]) 代码中划线处可选的表达式有 ①pre = cur ②pre, cur = cur, pre ③cur = pre - d[cur][1] ④cur = tmp - d[cur][1] 则划线处的表达式序号依次为( ) A. ①③ B. ①④ C. ②④ D. ②③ 【答案】C 【解析】 【详解】本题考查链表的遍历与指针操作的理解与应用。首先分析第一个while循环的执行过程:初始pre=-1,cur=1,循环执行后,最终pre会指向链表的最后一个元素的索引,cur的值为-1,此时循环结束。我们需要让初始状态切换为从末元素开始执行上一首操作的状态,也就是让cur指向末元素索引,pre指向末元素的前驱索引,语句②pre, cur = cur, pre可以直接将当前的pre(末元素索引)和cur(值为-1)交换,得到cur=pre原来的值也就是末元素索引,pre=-1,符合后续操作的初始要求,而语句①pre=cur无法实现这个状态切换,因此第一个划线处选②。接下来分析第二个for循环,每次执行上一首操作,需要让cur移动到当前节点的前驱节点。循环内前两句执行后,tmp保存了操作前的pre,pre保存了操作前的cur,此时要得到cur的前驱节点,结合之前while循环里cur = tmp + d[cur][1]的偏移量逻辑,当前d[cur][1]是原链表的后继偏移量,前驱偏移量可以通过tmp减去d[cur][1]得到,也就是语句④cur = tmp - d[cur][1],而语句③cur = pre - d[cur][1]的pre已经是更新后的值,无法得到正确的前驱地址,因此第二个划线处选④。综上两个划线处依次是②④。故答案为:C。 二、综合题(本题共3小题,其中第13小题7分,第14小题10分,第15小题9分,共26分) 13. 传感器应每分钟采集1次数据,数据元素格式为[相对时刻,读数],相对时刻的值为距离0点的分钟数。现要对数据进行整理,规则如下: ①补缺失数据:相邻两条数据时间差大于1分钟时,中间缺失的每个时间点读数,用前后读两个读数与缺失数据形成的等差数列填充。 ②修正信号跳变:若某读数同时比前、后读数的差异不小于20,用前后读数的算术平均值替换该读数。 (1)实现上述功能的部分Python程序如下,请在划线处填入合适的代码。 data = [0, 20], [1, 22], [4, 28], [5, 90], [6, 32]] filled = [] for i in range(len(data) - 1): t1, v1 = data[i][0], data[i][1] t2, v2 = data[i + 1][0], data[i + 1][1] filled. append([t1, v1]) if ① : m = (v2-v1)/(t2-t1) #等差数列公差 for k in range(1, t2 - t1): filled. append(data[ -1]) print(filled) result = [] for x in filled: result. append([x[0], x[1]]) for i in range(1, len(filled) - 1): v0 = filled[i - 1][1] v1 = filled[i][1] v2 = filled[i + 1][1] if v1 - max(v0, v2) >= 20 or v1 - min(v0, v2) <= -20 : ③ print(result) ①____、②____、③____ (2)以代码中的数据运行程序,加框处代码的执行次数为______次。 【答案】(1) ①. t2 - t1 > 1或t1 + 1< t2 ②. vl + m * k ③. result[i][1] = (v0 + v2) / 2 (2)2 【解析】 【详解】本题考查Python列表操作与数据预处理逻辑的代码实现能力。 (1)①处对应补缺失数据的触发条件,规则要求相邻两条数据时间差大于1分钟时才需要填充缺失值,因此判断条件为t2 - t1 > 1;②处是等差数列的第k个填充值,首项为v1,公差为m,偏移k项后的值为v1 + m * k;③处满足跳变修正条件时,需要将result中对应位置的读数替换为前后读数的算术平均值,即result[i][1] = (v0 + v2) / 2; (2)最后统计加框填充代码的执行次数,给定原始数据中仅[1,22]和[4,28]的时间差为3,大于1,需要填充k=1、k=2两个缺失时间点,因此加框代码共执行2次。 14. 某渔业合作社搭建智慧鱼塘水质监控系统,在多个鱼塘的不同水层(表层、中层、深层)部署了溶解氧、pH值等多种水质传感器。智能终端连接传感器,每30分钟采集一次数据并上传至云服务器存储。当溶解氧低于安全阈值时,系统通过智能终端自动控制增氧机启动;用户可通过手机APP查看实时水质数据和预警信息。请回答下列问题: (1)下列关于该系统规划与设计的描述,合理的是______ A. 同一类别的传感器须连接在同一个智能终端上 B. 每个鱼塘必须单独配置一台服务器来存储本鱼塘的数据 C. 系统可通过机器学习算法,结合多传感器数据预测水质变化趋势 D. 系统设计时,应优先选用性能最高的服务器以保证所有功能稳定运行 (2)在该系统中,智能终端在数据上传前进行异常值过滤和数据压缩,其主要目的是______ A. 替代云服务器的全部数据分析功能 B. 通过异常值过滤,识别故障传感器 C. 减少网络传输数据量,降低带宽压力 D. 提升传感器采集精度,同时延长传感器硬件的工作寿命 (3)关于系统的搭建、维护与优化,下列说法正确的有______ A. APP直接向增氧机发送控制指令,不需要经过智能终端 B. 软件开发时,安全阈值可以在服务器程序或智能终端程序中设置 C. 硬件搭建时,将传感器统一安装在水面附近,以便各水层数据具有可比性 D. 系统维护时,更换同型号新的传感器且连接方式不变,则终端程序无需修改 (4)运维人员发现某监测点上传的pH值数据出现如下特征:连续多天pH值稳定在7.2~7.5之间,之后突然跳变为6.1左右并持续保持。请写出1个造成该状况的原因,并给出排查建议。 (5)将所有鱼塘2025年数据导出到文件water. xlsx中,如图所示。首先依据“深度”数据(单位:米),计算出深度对应的水层(表层:深度≤0.5;中层:0.5<深度≤1.5;深层:深度>1.5)。然后从中层和深层水体中,找出平均溶解氧(单位:mg/L)最低的前3个鱼塘,并绘制预警柱形图。 鱼塘名称 水层 深度 溶解氧 pH值 采集时间 1号鱼塘 0.5 5.6 7.2 2025-01-01 00:00:00 1号鱼塘 1.1 4.9 7.0 2025-01-01 00:00:00 1号鱼塘 2.0 4.4 6.8 2025-01-01 00:00:00 2号鱼塘 0.5 9.6 6.9 2025-01-01 00:00:00 2号鱼塘 1.1 9.0 7.3 2025-01-01 00:00:00 ... ... ... ... ... 3号鱼塘 1.1 6.7 7.1 2025-12-31 23:30:00 3号鱼塘 2.1 6.2 7.0 2025-12-31 23:30:00 4号鱼塘 0.5 6.7 7.1 2025-12-31 23:30:00 4号鱼塘 1.1 5.7 6.5 2025-12-31 23:30:00 4号鱼塘 2.0 5.3 6.6 2025-12-31 23:30:00 实现上述功能的部分Python程序如下: import pandas as pd df = pd. read_excel("water. xlsx") for i in df. index: t = df. at[i,"深度"] df. at[i,"水层"] = "表层" if t > 1.5: df. at[i,"水层"] = "深层" __________: df. at[i,"水层"] = "中层" 划线处填入语句有①_____ A. if 0.5 < t < = 1.5 B. elif not t < 0.5 C. elif 0.5 < t < = 1.5 D. else #从中层和深层水体中,找出平均溶解氧最低的前3个鱼塘。 df1 = ________________ df2 = ________________ df3 = ________________ df3 = df3. head(3) #设置绘图参数,绘制预警柱形图,代码略 划线处应填入的语句依次为②_____(选3项,按顺序填写),程序中划线处可选的代码有: A.df[df["水层"]!= "表层"] B.df[df["深度"]<= 0.5] C.df1.groupby("鱼塘名称", as_index = False)["溶解氧"]. count() D.df1.groupby("鱼塘名称", as_index = False)["溶解氧"]. mean() E.df2. sort_values("溶解氧", ascending = True) F.df2. sort_values("溶解氧", ascending = False) 【答案】(1)C (2)C (3)BD (4)异常:水质真的发生变化 或 传感器故障。排查:现场人工测量,确定是水污染还是传感器故障;或 现场检查传感器探头是否有附着物或损坏; (5) ①. AC ②. ADE 【解析】 【小问1详解】 本题考查物联网系统的规划与设计合理性判断。同一类别的传感器不需要必须连接在同一个智能终端上,可根据部署场景灵活分配;多个鱼塘的数据可以统一存储在云服务器中,不需要每个鱼塘单独配置一台服务器;系统可以借助机器学习算法,融合多传感器采集的多维度水质数据,实现水质变化趋势的预测;系统设计需要遵循按需配置的原则,优先选用性能最高的服务器会造成资源浪费,性价比极低。故答案为:C。 【小问2详解】 本题考查物联网终端边缘计算的作用。智能终端的异常值过滤和数据压缩属于边缘侧的预处理操作,无法替代云服务器的全部数据分析功能;异常值过滤的核心目的不是识别故障传感器,只是筛除不合理的异常数据;对上传数据进行压缩、过滤无效异常数据,可以大幅减少需要通过网络传输的数据量,有效降低网络带宽的压力;该预处理操作属于软件层面的数据处理,无法提升传感器的硬件采集精度,也不能延长传感器的工作寿命。故答案为:C。 【小问3详解】 本题考查物联网系统的搭建、维护与优化相关知识。增氧机是通过本地智能终端连接控制的,手机APP的控制指令需要先上传到云服务器,再下发到对应智能终端执行,无法直接向增氧机发送指令;溶解氧的安全阈值既可以部署在智能终端本地,实现断网场景下的本地自动控制,也可以部署在云服务器程序中,实现远程统一配置;题干要求采集不同水层的水质数据,将传感器统一安装在水面附近无法获取中层、深层的真实数据,不符合系统设计需求;更换同型号的传感器且连接方式不变时,传感器的通信协议、数据格式都没有变化,终端程序不需要进行修改。故答案为:BD。 【小问4详解】 本题考查物联网监测数据异常的原因分析与排查能力。该pH值数据持续稳定跳变,常见的合理原因有两种,一是鱼塘水体的真实水质发生了变化,比如周边有酸性物质流入导致pH值持续降低;二是pH传感器本身出现故障,比如探头被附着物污染、硬件损坏导致采集数据异常。对应的排查建议:如果怀疑是真实水质变化,可以现场人工采集水样检测pH值,排查是否存在水体污染的情况;如果怀疑是传感器故障,可以到监测点现场检查pH传感器探头是否有附着物、是否出现硬件损坏,通过校准或者更换传感器验证数据是否恢复正常。故答案为:示例原因1:鱼塘真实水质发生变化,有酸性物质进入水体导致pH值持续降低。排查建议:现场人工采集水样检测pH值,排查是否存在外源污染导致水体酸化的情况。示例原因2:pH传感器出现故障,探头被杂质附着或者硬件损坏。排查建议:到监测点现场检查pH传感器探头的状态,清理探头附着物后重新校准,对比校准后的数据是否恢复正常。 【小问5详解】 本题考查Python结合pandas进行数据处理的程序分析。第一部分是水层判断的逻辑,现有代码先默认赋值水层为表层,之后判断如果t>1.5则赋值为深层,剩下的需要满足0.5=0.5,包含了t>1.5的情况,逻辑错误;选项C的elif 0.5 < t <= 1.5符合分支判断的逻辑要求;选项D的else,在已经排除t>1.5的情况后,剩下的数值范围是t<=1.5,会覆盖表层数据,因此①选AC。第二部分的功能是筛选中层和深层数据,之后按鱼塘分组计算平均溶解氧,再按溶解氧升序排序取前3个。第一步df1需要筛选出水层不等于表层的所有数据,对应选项A;第二步df2需要对df1按鱼塘名称分组,计算溶解氧的平均值,对应选项D;第三步df3需要将df2的溶解氧按升序排序,这样平均值最低的排在最前面,取head(3)就能得到最低的前3个鱼塘,对应选项E,因此②选ADE。 15. 某集装箱货场有n个箱区(编号0~n-1),限高H层。堆放、取出集装箱时仅可在堆垛的最上层操作。现有m个集装箱(编号0~m-1)按到场时间顺序堆放,每个集装箱依据取箱时间顺序取出。程序按时间先后逐个处理到场与取箱事件,到场与取箱时间相同优先处理到场事件,直至全部事件处理完毕。假设取出箱时该箱已堆放在场,且堆放时必有符合堆放规则的箱区。 堆放规则:若有空区、或最上层箱比本箱更晚取出的箱区,则放入层数最少且编号最小的箱区;否则放入最上层箱取出最晚且编号最小的箱区。 取出规则:若待取出箱在最上层,则直接取出。若该箱上方压有其他箱,自最上层起逐箱搬离,每搬离一箱记为一次翻箱,搬离的箱按堆放规则重新堆放(不得放回原箱区),直到最后取走该箱。 (1)设n=2,H=3。某时刻,0号区自下而上堆放着4号箱、6号箱,1号区堆放着2号箱。此时9号箱到场,已知这4个箱按取出先后依次为2号、4号、6号、9号,则9号箱应堆入____________号箱区。 函数与方法 功能 w. append(x) 在列表w末尾添加元素x x=w. pop() 将列表w末尾元素赋值给x,并将其从w中删除 (2)定义函数find_best(c, ban):为集装箱c查找符合堆放规则的目标箱区编号;ban代表禁止放入的箱区编号,ban为-1时无禁放区。请在划线处填入合适的代码。 def find_best(c, ban): best = - 1 for j in range(n): #放入层数最少的箱区 if j != ban and len(yard[j]) < H: if len(yard[j]) == 0 or dep[yard[j][-1]] > dep[c]: if best == -1 or len(yard[j]) < len(yard[best]): best = j if best != -1: return best for j in range(n): #最上层箱取出时间最晚且编号最小的箱区 if j != ban and 0 < len(yard[j]) < H: if best == -1 or ____________: best = j return best (3)定义函数take(c):执行取出集装箱c的操作,返回本次取箱产生的翻箱次数。 请在划线处填入合适的代码。 def take(c): for j in range(n): # 查询c所在的箱区 if c in yard[j]: break num = 0 while yard[j][-1] != c: # j号箱区最上层箱号 x = yard[j]. pop() p = find_best(x, j) yard[p]. append(x) _______________ yard[j]. pop() return num (4)主程序。按时间先后(到场相对时刻与取箱相对时刻)处理集装箱到场、取出事件,根据规则模拟堆箱与翻箱取箱流程,统计并输出全程翻箱总次数。请在划线处填入合适的代码。(到场相对时刻、取箱相对时刻表示距离当日0点的分钟数) '"数据格式: arrivals:到场事件列表,按集装箱到场先后顺序存储。 格式:arrivals = [[到场相对时刻,箱号],...,[到场相对时刻,箱号]] 如:arrivals = [[2, 3], [4, 0], [7, 1]] pickups:取箱事件列表,按取箱先后顺序存储。 格式:pickups = [[取箱相对时刻,箱号],...,[取箱相对时刻,箱号]] 如:pickups = [[6, 0], [9, 1], [12, 3]] yard:存储各箱区状态的二维列表 yard[i]:i 号箱区的栈,列表顺序 = 自下而上 yard[i][ - 1]:i 号箱区最上层箱号 dep:取箱次序 dep[c]为c号箱的取走次序 "' # 读入n、H、arrivals、pickups(代码略) m = len(arrivals) dep = [-1] * m yard = [[] for j in range(n)] #建立箱号到取箱次序的映射 for i in range(m): k = pickups[i][1] dep[k] = i cnt = 0 ia = ip = 0 #ia、ip为下一到场、取箱事件的下标 while ia < m or ip < m: if ia < m and (ip == m or arrivals[ia][0] <= pickups[ip][0]): ①____ p = find_best(c, -1) yard[p]. append(c) ia += 1 else: cnt += ②____ ip += 1 print("翻箱总次数:", cnt) 【答案】(1)0 (2)dep[yard[j][ -1]] > dep[yard[best][-1]] (3)num+= 1 (4) ①. c = arrivals[ia][1] ②. take(pickups[ip][1]) 【解析】 【详解】本题考查集装箱堆场调度规则的理解与Python栈操作、双指针事件处理的综合应用。 (1)4个箱的取箱先后为2号、4号、6号、9号,对应dep值分别为dep[2]=0,dep[4]=1,dep[6]=2,dep[9]=3。0号区当前最上层是6号,dep[6]=2大于dep[9]=3不成立,1号区最上层是2号,dep[2]=0小于dep[9]=3,没有空区也没有最上层箱比9号更晚取出的箱区,进入第二分支找最上层箱取出最晚的箱区,0号区最上层6号的取出时间晚于1号区的2号,因此9号放入0号箱区。 (2)find_best函数的第二分支,目标是找到最上层箱取出最晚且编号最小的箱区,当当前遍历的j号箱区最上层箱的dep值大于已记录best号箱区最上层箱的dep值时,更新best为j,故划线处代码为:dep[yard[j][ -1]] > dep[yard[best][-1]]。 (3)在翻箱的循环中,每搬离一个箱就产生一次翻箱,因此需要将翻箱计数num加1,故划线处代码为:num+= 1。 (4)①主程序处理到场事件时,需要先从当前待处理的到场事件中取出箱号c,对应arrivals[ia][1],故此处应为:c = arrivals[ia][1]。②处理取箱事件时,调用take函数取出对应箱,将返回的本次翻箱次数累加到总计数cnt中,故此处应为:take(pickups[ip][1])。 第1页/共1页 学科网(北京)股份有限公司 $ 2026学年第一学期高三教学质量检测 技术 试题卷 第一部分 信息技术(共50分) 一、单选题(本大题共12小题,每小题2分,共24分) 阅读材料,完成下面小题: 某校“智慧校园一卡通”系统集成了就餐、超市、门禁考勤等功能。进入校门时用人脸识别核验身份,访客可凭临时通行二维码进校;食堂智能结算台支持刷卡结算,实时统计菜品销量。各终端通过Wi-Fi连接服务器,系统每日自动生成报表,管理员可通过APP查看数据。家长可通过APP查看其学生的签到及消费记录。 1. 下列关于该系统中数据的说法,正确的是( ) A. 系统中的数据都是从外部获取的 B. 人脸图像和考勤日志都属于结构化数据 C. 系统生成报表后,提升了原始数据的价值 D. 食堂就餐数据的统计报表可用于优化菜品结构 2. 下列关于该系统组成与功能的描述,正确的是( ) A. 校园IC卡属于输入设备 B. 外来访客不属于该系统的用户 C. 人脸识别实现了身份认证功能 D. 系统的升级只是修复系统漏洞 3. 下列关于该系统中硬件与软件的描述,正确的是( ) A. 智能结算台具有数据处理功能 B. 用户终端里的软件都是应用软件 C. IC卡里存储的身份信息属于硬件 D. 服务器的性能对系统运行没有影响 4. 关于信息安全与信息社会责任,下列行为合理的是( ) ①对考勤记录表等重要数据定期备份 ②管理员将学生信息出售给校外培训机构 ③设置家长用户组,该组具有相同的功能权限 ④管理员为提升访问速度,直接关闭服务器上的防火墙 A. ①② B. ①③ C. ②④ D. ③④ 5. 下列关于该系统网络技术的分析,正确的是( ) A. 结算台上传销量数据,不需要传输介质 B. 校园内各人脸识别终端应设置成相同的IP地址 C. 管理员通过手机APP查看数据只能使用移动通信网络 D. 终端与服务器之间进行数据传输,需要遵循网络通信协议 6. 某环境传感器采集三类信息:5种天气类型、2种设备工作状态、6种数据质量等级。分别对三类信息进行二进制编码,再从左到右依次拼接成一个7位二进制数。现采集到2个十六进制信号:4BH和53H,这2个信号所表示的含义差异有( ) A. 天气类型、工作状态 B. 工作状态、数据质量等级 C. 天气类型、数据质量等级 D. 天气类型、工作状态、数据质量等级 7. 某校开展“校园吉尼斯”挑战赛,n名选手的成绩已按从小到大顺序存入列表a[0. .n-1]中。现需统计成绩大于k的选手数。算法描述如下: ①初始化查找区间:左端点i = 0,右端点j = n - 1; ②当i ≤ j时,重复执行③~④步;否则跳转至第⑤步; ③计算中间位置m:对i、j的平均值向下取整; ④若a[m] ≤ k,说明大于k的元素在m的右侧,更新i = m + 1;否则,更新j = m - 1; ⑤循环结束,n - i即为成绩大于k的选手总人数。 关于该算法,下列说法正确的是( ) A. 查找过程中i与j的值始终不同 B. 最优情况下,该算法需要比较n次 C. 若k大于所有选手的成绩,则统计结果为n - 1 D. 若存在大于k的成绩,则算法运行结束后,a[i]为第一个大于k的成绩 8. 某二叉树的中序遍历序列为ABCDE,后序遍历序列为ACEDB,其节点的值满足VA<VB<VC<VD<VE。现向该二叉树新增节点X,满足VC<VX<VD,要求添加后二叉树的中序遍历序列仍保持升序,则新的后序遍历序列为( ) A. AXCEDB B. XACEDB C. ACXEDB D. ACEXDB 9. 队列q队首到队尾的元素依次为“3,1,4,2”,栈s为空。约定:H操作为出队后入栈,T操作为出栈后入队。为了使队列q队首到队尾排列为“1,2,3,4”,需要的T操作至少( ) A. 4次 B. 5次 C. 6次 D. 7次 10. 有如下程序段: # 字符串s初始化长度为n(n>5)的任意字符串,代码略。 left, right = 0, n - 1 res = 0 while left < right: if s[left] != s[right]: res = left left += 1 else: res = right right -= 1 执行该程序段后,res的值为3,则下列表达式中,值一定为True的表达式个数为( ) ① left > right ② s[0] != s[n - 1] ③ left <= 4 A. 0 B. 1 C. 2 D. 3 11. 在升序列表中插入两个值,Python程序段如下: data = [1, 8, 46, 69] small = 6 big = 88 i = len(data) - 1 data += [0,0] #在列表末尾追加两个元素 m = 0 while i >= 0 and data[i] > small: if data[i] > big: data[i+2] = data[i] else: data[i+1] = data[i] m+= 1 i -= 1 data[i+1] = small data[i+m+2] = big print(m) 程序运行结束后,输出的值为( ) A. 0 B. 1 C. 2 D. 3 12. 某音乐播放器用链表d(元素格式为[歌曲编号,后继偏移量])存储播放列表(播放列表首元素的前驱、末元素的后继均为-1),以下程序模拟从最后一首歌开始,连续执行k次"上一首"后,输出当前播放的歌曲编号。 d = [[1, -2], [2, 4], [3, -1], [4, 3], [5, -3]] head = 1; k = 3 pre, cur = - 1, head while cur != -1: tmp = pre pre = cur cur = tmp + d[cur][1] _____________________ for i in range(k): tmp = pre pre = cur _____________________ print (d[cur][0]) 代码中划线处可选的表达式有 ①pre = cur ②pre, cur = cur, pre ③cur = pre - d[cur][1] ④cur = tmp - d[cur][1] 则划线处的表达式序号依次为( ) A. ①③ B. ①④ C. ②④ D. ②③ 二、综合题(本题共3小题,其中第13小题7分,第14小题10分,第15小题9分,共26分) 13. 传感器应每分钟采集1次数据,数据元素格式为[相对时刻,读数],相对时刻的值为距离0点的分钟数。现要对数据进行整理,规则如下: ①补缺失数据:相邻两条数据时间差大于1分钟时,中间缺失的每个时间点读数,用前后读两个读数与缺失数据形成的等差数列填充。 ②修正信号跳变:若某读数同时比前、后读数的差异不小于20,用前后读数的算术平均值替换该读数。 (1)实现上述功能的部分Python程序如下,请在划线处填入合适的代码。 data = [0, 20], [1, 22], [4, 28], [5, 90], [6, 32]] filled = [] for i in range(len(data) - 1): t1, v1 = data[i][0], data[i][1] t2, v2 = data[i + 1][0], data[i + 1][1] filled. append([t1, v1]) if ① : m = (v2-v1)/(t2-t1) #等差数列公差 for k in range(1, t2 - t1): filled. append(data[ -1]) print(filled) result = [] for x in filled: result. append([x[0], x[1]]) for i in range(1, len(filled) - 1): v0 = filled[i - 1][1] v1 = filled[i][1] v2 = filled[i + 1][1] if v1 - max(v0, v2) >= 20 or v1 - min(v0, v2) <= -20 : ③ print(result) ①____、②____、③____ (2)以代码中的数据运行程序,加框处代码的执行次数为______次。 14. 某渔业合作社搭建智慧鱼塘水质监控系统,在多个鱼塘的不同水层(表层、中层、深层)部署了溶解氧、pH值等多种水质传感器。智能终端连接传感器,每30分钟采集一次数据并上传至云服务器存储。当溶解氧低于安全阈值时,系统通过智能终端自动控制增氧机启动;用户可通过手机APP查看实时水质数据和预警信息。请回答下列问题: (1)下列关于该系统规划与设计的描述,合理的是______ A. 同一类别的传感器须连接在同一个智能终端上 B. 每个鱼塘必须单独配置一台服务器来存储本鱼塘的数据 C. 系统可通过机器学习算法,结合多传感器数据预测水质变化趋势 D. 系统设计时,应优先选用性能最高的服务器以保证所有功能稳定运行 (2)在该系统中,智能终端在数据上传前进行异常值过滤和数据压缩,其主要目的是______ A. 替代云服务器的全部数据分析功能 B. 通过异常值过滤,识别故障传感器 C. 减少网络传输数据量,降低带宽压力 D. 提升传感器采集精度,同时延长传感器硬件的工作寿命 (3)关于系统的搭建、维护与优化,下列说法正确的有______ A. APP直接向增氧机发送控制指令,不需要经过智能终端 B. 软件开发时,安全阈值可以在服务器程序或智能终端程序中设置 C. 硬件搭建时,将传感器统一安装在水面附近,以便各水层数据具有可比性 D. 系统维护时,更换同型号新的传感器且连接方式不变,则终端程序无需修改 (4)运维人员发现某监测点上传的pH值数据出现如下特征:连续多天pH值稳定在7.2~7.5之间,之后突然跳变为6.1左右并持续保持。请写出1个造成该状况的原因,并给出排查建议。 (5)将所有鱼塘2025年数据导出到文件water. xlsx中,如图所示。首先依据“深度”数据(单位:米),计算出深度对应的水层(表层:深度≤0.5;中层:0.5<深度≤1.5;深层:深度>1.5)。然后从中层和深层水体中,找出平均溶解氧(单位:mg/L)最低的前3个鱼塘,并绘制预警柱形图。 鱼塘名称 水层 深度 溶解氧 pH值 采集时间 1号鱼塘 0.5 5.6 7.2 2025-01-01 00:00:00 1号鱼塘 1.1 4.9 7.0 2025-01-01 00:00:00 1号鱼塘 2.0 4.4 6.8 2025-01-01 00:00:00 2号鱼塘 0.5 9.6 6.9 2025-01-01 00:00:00 2号鱼塘 1.1 9.0 7.3 2025-01-01 00:00:00 ... ... ... ... ... 3号鱼塘 1.1 6.7 7.1 2025-12-31 23:30:00 3号鱼塘 2.1 6.2 7.0 2025-12-31 23:30:00 4号鱼塘 0.5 6.7 7.1 2025-12-31 23:30:00 4号鱼塘 1.1 5.7 6.5 2025-12-31 23:30:00 4号鱼塘 2.0 5.3 6.6 2025-12-31 23:30:00 实现上述功能的部分Python程序如下: import pandas as pd df = pd. read_excel("water. xlsx") for i in df. index: t = df. at[i,"深度"] df. at[i,"水层"] = "表层" if t > 1.5: df. at[i,"水层"] = "深层" __________: df. at[i,"水层"] = "中层" 划线处填入语句有①_____ A. if 0.5 < t < = 1.5 B. elif not t < 0.5 C. elif 0.5 < t < = 1.5 D. else #从中层和深层水体中,找出平均溶解氧最低的前3个鱼塘。 df1 = ________________ df2 = ________________ df3 = ________________ df3 = df3. head(3) #设置绘图参数,绘制预警柱形图,代码略 划线处应填入的语句依次为②_____(选3项,按顺序填写),程序中划线处可选的代码有: A.df[df["水层"]!= "表层"] B.df[df["深度"]<= 0.5] C.df1.groupby("鱼塘名称", as_index = False)["溶解氧"]. count() D.df1.groupby("鱼塘名称", as_index = False)["溶解氧"]. mean() E.df2. sort_values("溶解氧", ascending = True) F.df2. sort_values("溶解氧", ascending = False) 15. 某集装箱货场有n个箱区(编号0~n-1),限高H层。堆放、取出集装箱时仅可在堆垛的最上层操作。现有m个集装箱(编号0~m-1)按到场时间顺序堆放,每个集装箱依据取箱时间顺序取出。程序按时间先后逐个处理到场与取箱事件,到场与取箱时间相同优先处理到场事件,直至全部事件处理完毕。假设取出箱时该箱已堆放在场,且堆放时必有符合堆放规则的箱区。 堆放规则:若有空区、或最上层箱比本箱更晚取出的箱区,则放入层数最少且编号最小的箱区;否则放入最上层箱取出最晚且编号最小的箱区。 取出规则:若待取出箱在最上层,则直接取出。若该箱上方压有其他箱,自最上层起逐箱搬离,每搬离一箱记为一次翻箱,搬离的箱按堆放规则重新堆放(不得放回原箱区),直到最后取走该箱。 (1)设n=2,H=3。某时刻,0号区自下而上堆放着4号箱、6号箱,1号区堆放着2号箱。此时9号箱到场,已知这4个箱按取出先后依次为2号、4号、6号、9号,则9号箱应堆入____________号箱区。 函数与方法 功能 w. append(x) 在列表w末尾添加元素x x=w. pop() 将列表w末尾元素赋值给x,并将其从w中删除 (2)定义函数find_best(c, ban):为集装箱c查找符合堆放规则的目标箱区编号;ban代表禁止放入的箱区编号,ban为-1时无禁放区。请在划线处填入合适的代码。 def find_best(c, ban): best = - 1 for j in range(n): #放入层数最少的箱区 if j != ban and len(yard[j]) < H: if len(yard[j]) == 0 or dep[yard[j][-1]] > dep[c]: if best == -1 or len(yard[j]) < len(yard[best]): best = j if best != -1: return best for j in range(n): #最上层箱取出时间最晚且编号最小的箱区 if j != ban and 0 < len(yard[j]) < H: if best == -1 or ____________: best = j return best (3)定义函数take(c):执行取出集装箱c的操作,返回本次取箱产生的翻箱次数。 请在划线处填入合适的代码。 def take(c): for j in range(n): # 查询c所在的箱区 if c in yard[j]: break num = 0 while yard[j][-1] != c: # j号箱区最上层箱号 x = yard[j]. pop() p = find_best(x, j) yard[p]. append(x) _______________ yard[j]. pop() return num (4)主程序。按时间先后(到场相对时刻与取箱相对时刻)处理集装箱到场、取出事件,根据规则模拟堆箱与翻箱取箱流程,统计并输出全程翻箱总次数。请在划线处填入合适的代码。(到场相对时刻、取箱相对时刻表示距离当日0点的分钟数) '"数据格式: arrivals:到场事件列表,按集装箱到场先后顺序存储。 格式:arrivals = [[到场相对时刻,箱号],...,[到场相对时刻,箱号]] 如:arrivals = [[2, 3], [4, 0], [7, 1]] pickups:取箱事件列表,按取箱先后顺序存储。 格式:pickups = [[取箱相对时刻,箱号],...,[取箱相对时刻,箱号]] 如:pickups = [[6, 0], [9, 1], [12, 3]] yard:存储各箱区状态的二维列表 yard[i]:i 号箱区的栈,列表顺序 = 自下而上 yard[i][ - 1]:i 号箱区最上层箱号 dep:取箱次序 dep[c]为c号箱的取走次序 "' # 读入n、H、arrivals、pickups(代码略) m = len(arrivals) dep = [-1] * m yard = [[] for j in range(n)] #建立箱号到取箱次序的映射 for i in range(m): k = pickups[i][1] dep[k] = i cnt = 0 ia = ip = 0 #ia、ip为下一到场、取箱事件的下标 while ia < m or ip < m: if ia < m and (ip == m or arrivals[ia][0] <= pickups[ip][0]): ①____ p = find_best(c, -1) yard[p]. append(c) ia += 1 else: cnt += ②____ ip += 1 print("翻箱总次数:", cnt) 第1页/共1页 学科网(北京)股份有限公司 $

资源预览图

精品解析:2027届浙江嘉兴市高三上学期一模信息技术试题-第1页
1
精品解析:2027届浙江嘉兴市高三上学期一模信息技术试题-第2页
2
精品解析:2027届浙江嘉兴市高三上学期一模信息技术试题-第3页
3

由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。