精品解析:浙江省天域名校协作体2027届高三上学期10月学科练习 技术试卷-高中信息技术

标签:
精品解析文字版答案
2026-10-18
| 2份
| 25页
| 11人阅读
| 0人下载

内容正文:

高三技术学科练习 注意事项: 1.本题共12页,满分100分,考试时间90分钟。 2.答题前,在答题卡指定区域填写班级、姓名、考场号、座位号及准考证号。 3.所有答案必须写在答题卡上,写在试题上无效。 4.结束后,只需上交答题卡。 第一部分 信息技术(共50分) 一、选择题(本大题共12小题,每小题2分,共24分。每小题有四个选项,只有一个符合题目要求,不选、多选、错选均不给分) 阅读下列材料,完成下面小题: 某医院的医疗系统,患者可以通过医院自助终端、小程序等自助挂号;取号后可到诊室扫条形码签到,等待叫号;就诊中还可在线查看检查报告;医生开方后可直接到窗口取药,就诊后通过小程序查看医生的用药指南和注意事项。 1. 下列对该系统中的数据、信息及处理过程的相关描述,正确的是( ) A. 患者挂号后生成条形码属于解码的过程 B. 生成的检查报告文档是信息 C. 医生开药方,属于数据的存储 D. 签到扫条形码,属于数据的采集 2. 下列为系统增加的功能中,采用了人工智能技术的是( ) A. 将条形码换成二维码 B. 就诊后增加让患者评价医生的功能 C. 为盲人提供语音互动导医功能 D. 在小程序中添加医院科室分布查询 3. 下列关于该系统组成的描述,不正确的是( ) A. 该系统的主要用户是医生和患者 B. 该医疗系统属于系统软件 C. 患者手机也属于该系统中的硬件 D. 该系统的历史数据可保存在数据库中 4. 下列举措不能提升系统安全性的是( ) A. 优化系统界面设计,提升用户操作体验 B. 采用磁盘阵列,降低数据丢失风险 C. 部署防火墙,关闭闲置端口 D. 定期扫描并修复系统漏洞 5. 医院服务器里存的原始CT断层图,主流为512×512像素、4096级灰度,检查报告截图(给患者看)尺寸压缩至50×25像素,256级灰度的压缩图,丢失大量灰度与细节,不能用于精准诊断。主流图与压缩图的压缩比约为( ) A. 3360:1 B. 310:1 C. 210:1 D. 10:1 6. 下列有关该系统网络相关描述正确的是( ) A. 该系统全部使用无线网络技术,可靠性更高 B. 自助终端必须使用静态IP地址 C. 患者手机需接入医院局域网才能查看报告 D. 该系统中网络协议主要使用TCP/IP 【答案】1. D 2. C 3. B 4. A 5. B 6. D 【解析】 【详解】1. 本题考查数据采集、编码与信息处理的相关知识。A选项错误,患者挂号后生成条形码属于编码的过程,而非解码。B选项错误,检查报告文档本身属于数据,经解读后才成为信息。C选项错误,医生开药方属于数据的生成,而非数据的存储。D选项正确,签到扫条形码将条码信息读取到系统中,属于数据的采集。因此,本题选择D选项。 2. 本题考查人工智能技术应用的相关知识。A选项错误,条形码换成二维码属于编码技术的改进,不属于人工智能。B选项错误,患者评价医生的功能属于常规的反馈功能。C选项正确,为盲人提供语音互动导医功能运用了语音识别、语音合成等人工智能技术。D选项错误,科室分布查询属于常规信息检索功能。因此,本题选择C选项。 3. 本题考查信息系统组成要素的相关知识。A选项正确,该系统的主要用户是医生和患者。B选项错误,该医疗系统属于应用软件,而非系统软件。C选项正确,患者手机是该系统中的硬件设备。D选项正确,该系统的历史数据可保存在数据库中。因此,本题选择B选项。 4. 本题考查系统安全防护的相关知识。A选项错误,优化系统界面设计提升的是用户体验,不能提升系统安全性。B选项正确,采用磁盘阵列可以降低数据丢失风险,提升安全性。C选项正确,部署防火墙并关闭闲置端口可以提升安全性。D选项正确,定期扫描并修复系统漏洞可以提升安全性。因此,本题选择A选项。 5. 本题考查图像数据量与压缩比计算的相关知识。原始CT断层图为512×512像素、4096级灰度,4096级灰度需12位二进制表示,其数据量为512×512×12位;压缩图为50×25像素、256级灰度,256级灰度需8位二进制表示,其数据量为50×25×8位,压缩比为512×512×12÷(50×25×8)≈314.6,约等于310:1。因此,本题选择B选项。 6. 本题考查网络技术应用的相关知识。A选项错误,该系统并非全部使用无线网络,有线网络可靠性通常更高。B选项错误,自助终端不必须使用静态IP地址。C选项错误,患者可通过互联网使用小程序查看报告,无需接入医院局域网。D选项正确,该系统中网络通信主要遵循TCP/IP协议。因此,本题选择D选项。 7. 某算法的流程图如图所示,数组a为[3,5,8,12,17,21,26,30]。图中判断框的条件a[m]<x改为a[m]≤x,则以下x值中,会使输出s改变的是( ) A. 3 B. 8 C. 17 D. 26 【答案】D 【解析】 【详解】本题考查的是流程图识读。数组a=[3,5,8,12,17,21,26,30],二分查找,s 记录循环次数。原判断a[m]< x;修改后a[m]≤x ,A、B、C:两种条件下 s 都不变。D选项,x=26:原 s=3,修改后 s=4,s 发生变化。故选 D。 8. 某栈S初始为空。队列Q初始时从队首到队尾依次为“竹”“梅”“菊”“兰”。操作A:队首元素出队并入栈S;操作B:栈顶元素出栈并入队尾。执行操作序列A①A②B③AA后,栈S从栈底到栈顶为“梅”“兰”“竹”“菊”,则①②③处依次应为( ) A. ①B ②A ③A B. ①A ②B ③A C. ①B ②A ③B D. ①A ②A ③B 【答案】A 【解析】 【详解】本题考查栈和队列的基本操作与特性。初始队列Q队首到队尾为竹、梅、菊、兰,栈S为空。验证第一个选项:第一步执行A操作,队首竹出队入栈,此时S栈底到栈顶为竹,Q队首到队尾为梅、菊、兰。接着执行①处的B操作,栈顶竹出栈入队尾,此时S为空,Q队首到队尾为梅、菊、兰、竹。之后执行A操作,队首梅出队入栈,此时S栈底到栈顶为梅,Q队首到队尾为菊、兰、竹。接着执行②处的A操作,队首菊出队入栈,此时S栈底到栈顶为梅、菊,Q队首到队尾为兰、竹。之后执行B操作,栈顶菊出栈入队尾,此时S栈底到栈顶为梅,Q队首到队尾为兰、竹、菊。接着执行③处的A操作,队首兰出队入栈,此时S栈底到栈顶为梅、兰,Q队首到队尾为竹、菊。最后执行末尾的两个连续A操作,队首竹出队入栈,队首菊出队入栈,最终S从栈底到栈顶为梅、兰、竹、菊,完全符合题目要求,其余选项验证后均无法得到对应结果。故答案为:A。 9. 某二叉树根节点为A,其中序遍历结果为D-C-E-F-A-B。则该二叉树的叶子节点不可能同时为( ) A. B,C,E B. B,D C. B,D,E D. B,C,F 【答案】A 【解析】 【详解】本题考查二叉树遍历与叶子节点判断相关知识。中序遍历结果为D-C-E-F-A-B,根节点A将序列分为左子树{D,C,E,F}和右子树{B},右子树仅一个节点B且无子节点,故B必为叶子。对左子树{D,C,E,F}按中序位置(根可为D、C、E、F之一)枚举全部可能的二叉树形态,可得整棵树的叶子节点集合只能是{F,B}、{E,B}、{C,F,B}、{C,B}、{D,F,B}、{D,E,B}、{D,B}这几种。逐一检查:A选项(B,C,E)要求B、C、E同时为叶子,而所有可能的叶子集合中C与E从不同时出现(含C的集合为{C,F,B}、{C,B},含E的集合为{E,B}、{D,E,B}),故不可能;B选项(B,D)可由叶子集合{D,B}实现,可能;C选项(B,D,E)可由{D,E,B}实现,可能;D选项(B,C,F)可由{C,F,B}实现,可能。因此,本题选择A选项。 10. 有如下程序段: def dx(h,t): if h == t: return "" if h % 3 == 0: a[t] = a[h] return dx((h + 1)% 6,(t + 1)% 6) else: return a[h] + dx((h + 1)% 6,t) a=["1","2","3","4","5","6"] print(dx(0,5)) 执行后显示结果是( ) A. 12453 B. 124536 C. 23514 D. 235614 【答案】C 【解析】 【详解】本题考查递归函数与数组元素动态修改相关知识的程序执行。调用dx(0,5)时,h=0满足h%3==0,执行赋值语句a[5] = a[0],即把a[0]的值"1"赋给a[5],a变为["1","2","3","4","5","1"],然后递归dx(1,0);dx(1,0)中h%3!=0,返回a[1]("2")与dx(2,0)拼接;dx(2,0)返回a[2]("3")与dx(3,0)拼接;dx(3,0)中h%3==0,执行a[0] = a[3],把a[3]的值"4"赋给a[0](关键:a[0]由"1"被改为"4"),a变为["4","2","3","4","5","1"],递归dx(4,1);dx(4,1)返回a[4]("5")与dx(5,1)拼接;dx(5,1)返回a[5]("1")与dx(0,1)拼接;dx(0,1)中h%3==0,执行a[1] = a[0],把a[0]的值"4"赋给a[1],a变为["4","4","3","4","5","1"],递归dx(1,2);dx(1,2)返回a[1]("4")与dx(2,2)拼接,dx(2,2)因h==t返回""。逐层回溯得dx(0,1)="4",dx(5,1)="1"+"4"="14",dx(4,1)="5"+"14"="514",dx(3,0)="514",dx(2,0)="3"+"514"="3514",dx(1,0)="2"+"3514"="23514",最终dx(0,5)="23514"。因此,本题选择C选项。 11. 某Python程序段如下,列表a中存有10个互不相等的整数。 p,q = 0,0 for i in range(1,len(a)): if a[i] < a[q]: q = i else: p=i 执行该程序段后p的值为3,则下列表达式中一定为True的有( ) ① a[4] < a[3] ② a[4] < a[0] ③ a[5] < a[4] ④ a[0] < a[4] A. 1个 B. 2个 C. 3个 D. 4个 【答案】C 【解析】 【详解】本题考查Python循环与列表变量的逻辑推导能力。首先梳理程序执行逻辑:初始p和q都赋值为0,循环i从1到9依次遍历列表元素。每次循环中,如果当前a[i]小于a[q],就更新q为i(q始终记录当前遍历过的所有元素里最小值的下标),否则就更新p为i。已知最终p的值为3,说明循环执行到i=3之后,后续i=4、5、6、7、8、9的所有循环分支都走了if分支,也就是a[4] < a[q],a[5] < a[q],一直到a[9] < a[q],而q在i=3之前的遍历过程中,记录的是i从0到3里的最小值下标。接下来逐一判断四个表达式:①a[4] < a[3]:因为i=3时走了else分支,说明a[3] >= a[q],而a[4] < a[q],所以a[4] < a[q] <= a[3],该式一定成立。②a[4] < a[0]:a[0]是i=0的元素,q记录的是0到3的最小值,a[q] <= a[0],而a[4] < a[q],因此a[4] < a[0],该式一定成立。③a[5] < a[4]:i=4 循环结束后q=4;i=5 进入 if 分支,判断条件就是a[5] < a[0],该式一定成立。④a[0] < a[4]:和②的结论矛盾,该式一定不成立。综上,一定为True的表达式共有3个。故答案为:C。 12. 使用列表a模拟链表结构,每个节点包含[数据域,指针域]。对链表进行分区整理:使所有数据值小于x的节点位于数据值大于等于x的节点之前,且小于x的节点保持原有相对顺序。如链表a= [[3,1],[1,2],[4,3],[2,4],[5,-1]],head = 0。取x=3,分区整理得到1→2→3→4→5。实现该功能的程序段如下,方框处应填入的语句是( ) def part(head,x,a): dy=len(a) a.append([-1,head]) t=prv=dy cur=head while cur !=-1: nxt=a[cur][1] if a[cur][0]<x: else: prv= cur cur=nxt return a[dy] [1] #返回头指针 A. if t== prv: a[prv][1]=nxt a[cur][1]=a[t][1] a[t][1]=cur cur=a[cur][1] B. if t != prv: a[ prv] [1]=nxt a[t] [1]=cur a[ cur][1]=a[t][1] t=cur C. if t!= prv: a[prv] [1]=cur a[cur][1]=a[t][1] a[t] [1]=cur t=a[t] [1] D. if t != prv: a[ prv][1]=nxt a[ cur] [1]=a[t][1] a[t] [1]=cur t=a[t] [1] A. A B. B C. C D. D 【答案】D 【解析】 【详解】本题考查链表操作与稳定分区算法相关知识的程序填空。算法设置哨兵节点dy指向原链表头,prv记录当前节点cur的前驱,t记录"小于x节点链"的尾部,遍历时若 a[cur][0] < x 则把cur摘出并接到t之后,否则 prv = cur 继续。摘除并接入的正确顺序应为:先 a[prv][1] = nxt 让前驱跳过cur,再 a[cur][1] = a[t][1] 使cur指向小值链原来的后继,再 a[t][1] = cur 使小值链尾部接上cur,最后无条件 t = a[t][1] 更新小值链尾(若 t == prv 说明cur本就在t之后,无需移动,此时 a[t][1] 即为cur,t同样更新为cur)。A选项if条件写成 t == prv 且无t的更新,错误;B选项将 a[t][1] = cur 写在 a[cur][1] = a[t][1] 之前,使cur的指针域被覆盖为指向自身,且t未无条件更新,错误;C选项用 a[prv][1] = cur 未实现摘除cur,会造成链中重复指向,错误;D选项各步顺序正确且无条件更新t,正确。代入 a = [[3,1],[1,2],[4,3],[2,4],[5,-1]]、head = 0、x = 3 验证,最终链表为1→2→3→4→5,符合要求。因此,本题选择D选项。 二、非选择题(本题共3小题,其中第13题7分,第14题10分,第15题9分,共26分) 13. 有n个集装箱要装上一艘载重量为c的轮船,其中集装箱i的重量为w[i]。现编写Python程序找出一种最优装载方案,将轮船尽可能装满,即在装载体积不受限制的情况下,将尽可能重的集装箱装上轮船。程序运行结果如图所示: 最优装载重量:20 物品索引:[[0,1,2,3],[0,1,2,4],[1,2,3,4]] 程序代码如下: w=[6,3,5,6,6] #集装箱重量列表 c= 20 bestw=0 #初始化最优装载重量 bestc =[] #存储最优解的集装箱索引 ① for i in range(2**n): #使用进制枚举所有物品的组合情况,共2**n种组合 total=0 ;curr=[] for j in range(n): if i//2**j%2 == 1: #当i的第j位二进制为1,表示w[j]重量的集装箱装上船 ② curr.append(j) if total <= c: if total > estw: bestw=total bestc=[curr] #更新最优集装箱索引组合 elif ③ : bestc.append(curr) print("最优装载重量:",bestw) print("集装箱索引:",bestc) (1)如果轮船载重c改为21,最优装载重量的物品索引为__________ (2)请在划线处填写合适的代码以完成上述功能。①___________、②_____________、③____________ 【答案】(1)[0,1,3,4] 注:只要数字顺序正确即可 (2) ①. n=len(w) 或其他等价答案 ②. total+=w[j] 或其他等价答案 ③. total==bestw 或其他等价答案 【解析】 【详解】本题考查循环语句。 (1)当轮船载重c改为21时,程序枚举所有组合并筛选总重量不超过21的最大值,各集装箱重量为w=[6,3,5,6,6],其中索引0、1、3、4对应的重量6+3+6+6=21,恰好等于载重且达到最大,其他组合重量均不超过20或超过21,因此最优装载重量为21,物品索引为[0,1,3,4]。 (2)①处需要先获取集装箱的个数,才能供外层range(2**n)和内层range(n)使用,应填n=len(w);②处表示被选中(二进制位为1)的集装箱重量累加到total中,应填total+=w[j];③处表示当某种组合的总重量等于当前最优装载重量bestw时,将该组合追加到bestc中,应填total==bestw。 14. 某智慧农业园区在各温室设置监测点,每个监测点配备智能终端,连接土壤湿度、空气温度等传感器,采集的数据通过IoT模块上传至服务器。用户可通过浏览器或手机APP查询实时及历史数据等。请回答下列问题: (1)下列关于该系统硬件连接的说法,正确的是__________(单选,填字母)。 A. 传感器和执行器可以连接在同一智能终端的同一引脚上 B. 不同监测点的智能终端可以通过各自的IoT模块将数据上传至服务器 C. 传感器采集数据时必须通过服务器才能传输到智能终端 (2)下列关于该系统的说法,正确的有__________(多选,填字母)。 A. 该系统同时采用了B/S架构和C/S架构 B. 若服务器损坏,传感器将无法采集数据 C. 服务器可以对历史数据进行存储和分析 D. 智能终端可对采集的数据进行初步处理后上传 (3)小华基于Flask Web框架编写服务器端程序,服务器IP为“192.168.1.100”,端口号为5000,网站部分功能页面规划如下表所示: 序号 访问地址 功能说明 1 /input 提交传感器数据 2 /data/<area> 统计显示某温室的数据,例如/data/A表示显示A温室的数据 管理人员通过浏览器查询C温室的数据时,应访问的URL是:http://__________。 (4)该系统运行一段时间后,发现某温室空气温度数据偶尔出现异常值。请从数据处理的角度提出一种问题解决方案。 (5)从数据库导出2026年全年的监测数据,保存到“data.xlsx”文件中。数据格式如图所示。现要找出全年土壤湿度平均值最低的温室,统计该温室各个月的月平均土壤湿度,并选出土壤湿度最低的5个月份数据用图表呈现。 日期 时间 温室编号 土壤湿度 温度 2026/1/1 8:00 A 47.5 18.2 2026/1/1 8:00 B 59 19.5 2026/1/1 8:00 C 44.6 17.8 2026/1/1 8:00 D 52 18.9 2026/1/2 8:00 A 43.1 17.5 2026/1/2 8:00 B 61.2 20.1 2026/1/2 8:00 C 40.3 16.9 2026/1/2 8:00 D 50.4 18 #导入Pandas相关模块代码略 df=pd.read_excel("data.xlsx") df["月份"]=df["日期"].str[5:7] df1=df.groupby("温室编号",as_index=False).mean() df1= ①____ s=df1["温室编号"] [0] df2= ②____ df3= ③____ df3=df3.sort_values("土壤湿度").head(5) plt.bar(df3["月份"],df3["土壤湿度"]) #图表显示设置代码略 程序中①②③处可选的代码如下,请选择合适的代码填入划线处(单选,填字母)。 A.df1.sort_values("土壤湿度",ascending=False) B.df1.sort_values("土壤湿度") C.df[df["温室编号"] == s] D.df1[df1.温室编号=s] E.df2.groupby("日期",as_index=False).土壤湿度.mean() F.df2.groupby("月份",as-index=False).mean() 【答案】(1)B (2)ACD (3)192.168.1.100:5000/data/C (注:不去严格区分 C的大小写) (4)在服务器端代码中添加过滤异常数据的代码:或在智能终端中添加过滤异常数据的代码或其他可行方案 (5) ①. B ②. C ③. F 【解析】 【小问1详解】 本题考查物联网智慧农业系统的硬件连接常识。选项A,传感器和执行器不能连接在同一智能终端的同一引脚上,会出现信号冲突,无法正常工作;选项B,不同监测点的智能终端可以通过各自的IoT模块将数据上传至服务器,符合系统的设计逻辑;选项C,传感器采集数据是直接传输给本地的智能终端,不需要先经过服务器。故答案为:B。 【小问2详解】 本题考查物联网系统的架构与运行逻辑。选项A,用户通过浏览器访问属于B/S架构,通过手机APP访问属于C/S架构,该系统同时采用两种架构;选项B,传感器采集数据是本地直接和智能终端交互,服务器损坏不影响传感器的采集动作;选项C,服务器的核心功能之一就是对上传的历史数据进行存储和分析;选项D,智能终端可以先对采集的原始数据做去重、校验等初步处理后再上传,减少无效数据传输。故答案为:ACD。 【小问3详解】 本题考查Flask Web框架的URL访问规则。URL的组成为协议头+服务器IP+端口号+路由路径,该服务器IP是192.168.1.100,端口5000,查询C温室数据对应的路由是/data/C,拼接后得到完整地址。故答案为:192.168.1.100:5000/data/C。 【小问4详解】 本题考查物联网数据异常的处理方案。从数据处理的角度,可以在智能终端或者服务器端设置合理的温度数据正常范围阈值,当采集到的温度值超出该合理区间时,判定为异常值直接过滤丢弃,或者采用前后相邻的正常采集数据的平均值替换该异常值,避免异常数据进入后续的统计流程。故答案为:在服务器端或智能终端添加异常值过滤逻辑,设置空气温度的合理取值范围,超出范围的异常数据直接丢弃,或使用相邻正常数据的均值替换异常值。 【小问5详解】 本题考查Pandas数据处理的代码逻辑。①处需要将按温室编号分组求均值后的df1按土壤湿度升序排序,这样排序后第一行就是全年土壤湿度平均值最低的温室,对应选项B;②处需要筛选出这个最低湿度温室的所有原始数据,对应选项C;③处需要对筛选出的该温室数据按月份分组求均值,得到每个月的平均土壤湿度,对应选项F。故答案为:①B ②C ③F。 15. 算力调度平台有若干台服务器,系统按时间顺序处理事件:任务到达时若有空闲服务器则立即执行,否则按优先级(数值越小越高,相同按到达先后)进入等待队列;服务器空闲时从队列中取出优先级最高的任务执行。管理员在特定时刻查询等待队列中等待时间超过阈值TH(如20个时间单位)的任务数量,等待时间 查询时刻-任务提交时刻。请回答下列问题: 任务编号 提交时刻 所需时长 优先级 501 0 5 3 502 1 2 2 503 2 6 1 504 5 3 2 505 6 3 1 506 7 4 3 图a 时刻 事件类型 说明 0 0(提交) 任务501到达 1 0(提交) 任务502到达 … … … 7 0(提交) 任务506到达 7 1(查询) 查询等待队列负载 20 1(查询) 查询等待队列负载 图b (1)某日0时起,等待队列初始为空,平台有2台服务器(编号0、1)。任务信息图a和事件序列图b所示。管理员在7时刻的查询事件中,当TH=20时等待队列中的任务数为___________。(填数字) (2)函数 add_order将任务idx按优先级插入等待队列que(每个节点为[任务索引,下一指针],优先级相同的按到达先后排列。请在划线处填入合适的代码。 def add_order(head,idx): que.append([idx,-1]) #新节点加入队列 if head == -1 or tasks[que[head] [0]] [3] > tasks[idx] [3]: que[len(que)- 1] [1]=head head=len(que)- 1 else: pre=head;p=que[pre] [1] while p != -1 and _______: pre =p p=que [p][1] #新节点插到pre之后,代码略 return head (3)实现上述调度、查询模拟功能的Python程序如下,请在划线处填入合适的代码。 def proc(m,events,tasks): que=[];head=-1 srv=[0] * m #各服务器下次空闲时刻 done =[] #done:执行结果[任务编号,开始时刻,服务器]; stats =[] #stats:各次查询的等待超时任务数 i=0;cur=0;n=len(events) while i < n or head != -1: if i < n: cur=events [i] [0] #当前时刻(下一事件时刻) else: cur=99999999 #无事件,保证队列清空 #派发队首任务(优先级最高的任务) if head != -1 and tasks[que[head] [0]][1] <= cur: j =-1 for x in range(m): if srv[x] <= cur and(①____): j=x if j != -1: idx =que[head] [0] head=que[head] [1] start=max(srv[j],tasks[idx][1]) done.append([tasks [idx] [0],start,j]) ②_________ continue #处理当前时刻的所有事件 if i < n: while i < n and events[i][0] == cur: t,typ,idx=events[i] if typ == 0: head=add_order(head,idx) else: cnt=0;p=head while p != -1: if ③_________: cnt += 1 p=que[p] [1] stats.append(cnt) i += 1 return done,stats """ 服务器数量m、阈值TH已读入。任务序列tasks每条为:[任务编号,提交时刻,所需时长,优先级],已按时间升序排列。事件序列events每条为:[事件时刻,事件类型,任务索引],类型 0=提交,类型 1=查询,查询事件任务索引为-1。已按时间升序排列。 """ done,stats=proc(m,events,tasks) #输出执行结果与查询统计,代码略 【答案】(1)2 (2)tasks[que[p] [0]][3] <= tasks [idx] [3] 或其他等价答案 (3) ①. j=-1 or srv[x] < srv[j] 或其他等价答案 ②. srv[j]=start + tasks[idx] [2] 或其他等价答案 ③. cur-tasks [que [p] [0]][1] > TH 或其他等价答案 【解析】 【小问1详解】 本题考查的是对规则的理解。 时刻0:501到达,占用服务器0,执行到时刻5结束; 时刻1:502到达,占用服务器1,执行到时刻3结束; 时刻2:503到达,两台服务器都被占用,进入等待队列; 时刻3:服务器1空闲,取出队列中503执行,503运行到时刻9结束; 时刻5:504到达,服务器0刚空闲,直接占用服务器0执行,到时刻8结束; 时刻6:505到达,两台服务器都在运行,进入等待队列; 时刻7:506到达,两台服务器都在运行,进入等待队列 此时等待队列里的任务是505、506,共2个;且当前查询时刻为7,所有等待任务的等待时间最大仅为7-6=1,远小于TH=20,符合统计要求,因此结果为2。 【小问2详解】 本题考查的是队列链表的插入。循环的作用是向后遍历链表,找到第一个优先级比新任务更小(优先级数值更大)的节点,把新任务插到pre和p之间。规则是优先级数值越小优先级越高,相同优先级按到达先后排列,因此只要当前p指向节点的优先级不高于新任务的优先级,就继续往后移动指针。故此处应为:tasks[que[p][0]][3] <= tasks[idx][3] 【小问3详解】 本题考查的是链表的应用。① j == -1 or srv[x] < srv[j]:遍历所有服务器,筛选出空闲且最早可用的服务器,j记录当前最优服务器下标,当遇到新的空闲服务器x比当前j的空闲时刻更早时,更新j为x。 ② srv[j] = start + tasks[idx][2] :更新选中的服务器j的下次空闲时刻,等于任务开始时刻加上该任务的所需运行时长。 ③ cur - tasks[que[p][0]][1] > TH :统计等待队列中等待时间超过阈值TH的任务数,等待时间定义为查询时刻cur减去任务的提交时刻,符合题干要求。 第1页/共1页 学科网(北京)股份有限公司 $ 高三技术学科练习 注意事项: 1.本题共12页,满分100分,考试时间90分钟。 2.答题前,在答题卡指定区域填写班级、姓名、考场号、座位号及准考证号。 3.所有答案必须写在答题卡上,写在试题上无效。 4.结束后,只需上交答题卡。 第一部分 信息技术(共50分) 一、选择题(本大题共12小题,每小题2分,共24分。每小题有四个选项,只有一个符合题目要求,不选、多选、错选均不给分) 阅读下列材料,完成下面小题: 某医院的医疗系统,患者可以通过医院自助终端、小程序等自助挂号;取号后可到诊室扫条形码签到,等待叫号;就诊中还可在线查看检查报告;医生开方后可直接到窗口取药,就诊后通过小程序查看医生的用药指南和注意事项。 1. 下列对该系统中的数据、信息及处理过程的相关描述,正确的是( ) A. 患者挂号后生成条形码属于解码的过程 B. 生成的检查报告文档是信息 C. 医生开药方,属于数据的存储 D. 签到扫条形码,属于数据的采集 2. 下列为系统增加的功能中,采用了人工智能技术的是( ) A. 将条形码换成二维码 B. 就诊后增加让患者评价医生的功能 C. 为盲人提供语音互动导医功能 D. 在小程序中添加医院科室分布查询 3. 下列关于该系统组成的描述,不正确的是( ) A. 该系统的主要用户是医生和患者 B. 该医疗系统属于系统软件 C. 患者手机也属于该系统中的硬件 D. 该系统的历史数据可保存在数据库中 4. 下列举措不能提升系统安全性的是( ) A. 优化系统界面设计,提升用户操作体验 B. 采用磁盘阵列,降低数据丢失风险 C. 部署防火墙,关闭闲置端口 D. 定期扫描并修复系统漏洞 5. 医院服务器里存的原始CT断层图,主流为512×512像素、4096级灰度,检查报告截图(给患者看)尺寸压缩至50×25像素,256级灰度的压缩图,丢失大量灰度与细节,不能用于精准诊断。主流图与压缩图的压缩比约为( ) A. 3360:1 B. 310:1 C. 210:1 D. 10:1 6. 下列有关该系统网络相关描述正确的是( ) A. 该系统全部使用无线网络技术,可靠性更高 B. 自助终端必须使用静态IP地址 C. 患者手机需接入医院局域网才能查看报告 D. 该系统中网络协议主要使用TCP/IP 7. 某算法的流程图如图所示,数组a为[3,5,8,12,17,21,26,30]。图中判断框的条件a[m]<x改为a[m]≤x,则以下x值中,会使输出s改变的是( ) A. 3 B. 8 C. 17 D. 26 8. 某栈S初始为空。队列Q初始时从队首到队尾依次为“竹”“梅”“菊”“兰”。操作A:队首元素出队并入栈S;操作B:栈顶元素出栈并入队尾。执行操作序列A①A②B③AA后,栈S从栈底到栈顶为“梅”“兰”“竹”“菊”,则①②③处依次应为( ) A. ①B ②A ③A B. ①A ②B ③A C. ①B ②A ③B D. ①A ②A ③B 9. 某二叉树根节点为A,其中序遍历结果为D-C-E-F-A-B。则该二叉树的叶子节点不可能同时为( ) A. B,C,E B. B,D C. B,D,E D. B,C,F 10. 有如下程序段: def dx(h,t): if h == t: return "" if h % 3 == 0: a[t] = a[h] return dx((h + 1)% 6,(t + 1)% 6) else: return a[h] + dx((h + 1)% 6,t) a=["1","2","3","4","5","6"] print(dx(0,5)) 执行后显示结果是( ) A. 12453 B. 124536 C. 23514 D. 235614 11. 某Python程序段如下,列表a中存有10个互不相等的整数。 p,q = 0,0 for i in range(1,len(a)): if a[i] < a[q]: q = i else: p=i 执行该程序段后p的值为3,则下列表达式中一定为True的有( ) ① a[4] < a[3] ② a[4] < a[0] ③ a[5] < a[4] ④ a[0] < a[4] A. 1个 B. 2个 C. 3个 D. 4个 12. 使用列表a模拟链表结构,每个节点包含[数据域,指针域]。对链表进行分区整理:使所有数据值小于x的节点位于数据值大于等于x的节点之前,且小于x的节点保持原有相对顺序。如链表a= [[3,1],[1,2],[4,3],[2,4],[5,-1]],head = 0。取x=3,分区整理得到1→2→3→4→5。实现该功能的程序段如下,方框处应填入的语句是( ) def part(head,x,a): dy=len(a) a.append([-1,head]) t=prv=dy cur=head while cur !=-1: nxt=a[cur][1] if a[cur][0]<x: else: prv= cur cur=nxt return a[dy] [1] #返回头指针 A. if t== prv: a[prv][1]=nxt a[cur][1]=a[t][1] a[t][1]=cur cur=a[cur][1] B. if t != prv: a[ prv] [1]=nxt a[t] [1]=cur a[ cur][1]=a[t][1] t=cur C. if t!= prv: a[prv] [1]=cur a[cur][1]=a[t][1] a[t] [1]=cur t=a[t] [1] D. if t != prv: a[ prv][1]=nxt a[ cur] [1]=a[t][1] a[t] [1]=cur t=a[t] [1] A. A B. B C. C D. D 二、非选择题(本题共3小题,其中第13题7分,第14题10分,第15题9分,共26分) 13. 有n个集装箱要装上一艘载重量为c的轮船,其中集装箱i的重量为w[i]。现编写Python程序找出一种最优装载方案,将轮船尽可能装满,即在装载体积不受限制的情况下,将尽可能重的集装箱装上轮船。程序运行结果如图所示: 最优装载重量:20 物品索引:[[0,1,2,3],[0,1,2,4],[1,2,3,4]] 程序代码如下: w=[6,3,5,6,6] #集装箱重量列表 c= 20 bestw=0 #初始化最优装载重量 bestc =[] #存储最优解的集装箱索引 ① for i in range(2**n): #使用进制枚举所有物品的组合情况,共2**n种组合 total=0 ;curr=[] for j in range(n): if i//2**j%2 == 1: #当i的第j位二进制为1,表示w[j]重量的集装箱装上船 ② curr.append(j) if total <= c: if total > estw: bestw=total bestc=[curr] #更新最优集装箱索引组合 elif ③ : bestc.append(curr) print("最优装载重量:",bestw) print("集装箱索引:",bestc) (1)如果轮船载重c改为21,最优装载重量的物品索引为__________ (2)请在划线处填写合适的代码以完成上述功能。①___________、②_____________、③____________ 14. 某智慧农业园区在各温室设置监测点,每个监测点配备智能终端,连接土壤湿度、空气温度等传感器,采集的数据通过IoT模块上传至服务器。用户可通过浏览器或手机APP查询实时及历史数据等。请回答下列问题: (1)下列关于该系统硬件连接的说法,正确的是__________(单选,填字母)。 A. 传感器和执行器可以连接在同一智能终端的同一引脚上 B. 不同监测点的智能终端可以通过各自的IoT模块将数据上传至服务器 C. 传感器采集数据时必须通过服务器才能传输到智能终端 (2)下列关于该系统的说法,正确的有__________(多选,填字母)。 A. 该系统同时采用了B/S架构和C/S架构 B. 若服务器损坏,传感器将无法采集数据 C. 服务器可以对历史数据进行存储和分析 D. 智能终端可对采集的数据进行初步处理后上传 (3)小华基于Flask Web框架编写服务器端程序,服务器IP为“192.168.1.100”,端口号为5000,网站部分功能页面规划如下表所示: 序号 访问地址 功能说明 1 /input 提交传感器数据 2 /data/<area> 统计显示某温室的数据,例如/data/A表示显示A温室的数据 管理人员通过浏览器查询C温室的数据时,应访问的URL是:http://__________。 (4)该系统运行一段时间后,发现某温室空气温度数据偶尔出现异常值。请从数据处理的角度提出一种问题解决方案。 (5)从数据库导出2026年全年的监测数据,保存到“data.xlsx”文件中。数据格式如图所示。现要找出全年土壤湿度平均值最低的温室,统计该温室各个月的月平均土壤湿度,并选出土壤湿度最低的5个月份数据用图表呈现。 日期 时间 温室编号 土壤湿度 温度 2026/1/1 8:00 A 47.5 18.2 2026/1/1 8:00 B 59 19.5 2026/1/1 8:00 C 44.6 17.8 2026/1/1 8:00 D 52 18.9 2026/1/2 8:00 A 43.1 17.5 2026/1/2 8:00 B 61.2 20.1 2026/1/2 8:00 C 40.3 16.9 2026/1/2 8:00 D 50.4 18 #导入Pandas相关模块代码略 df=pd.read_excel("data.xlsx") df["月份"]=df["日期"].str[5:7] df1=df.groupby("温室编号",as_index=False).mean() df1= ①____ s=df1["温室编号"] [0] df2= ②____ df3= ③____ df3=df3.sort_values("土壤湿度").head(5) plt.bar(df3["月份"],df3["土壤湿度"]) #图表显示设置代码略 程序中①②③处可选的代码如下,请选择合适的代码填入划线处(单选,填字母)。 A.df1.sort_values("土壤湿度",ascending=False) B.df1.sort_values("土壤湿度") C.df[df["温室编号"] == s] D.df1[df1.温室编号=s] E.df2.groupby("日期",as_index=False).土壤湿度.mean() F.df2.groupby("月份",as-index=False).mean() 15. 算力调度平台有若干台服务器,系统按时间顺序处理事件:任务到达时若有空闲服务器则立即执行,否则按优先级(数值越小越高,相同按到达先后)进入等待队列;服务器空闲时从队列中取出优先级最高的任务执行。管理员在特定时刻查询等待队列中等待时间超过阈值TH(如20个时间单位)的任务数量,等待时间 查询时刻-任务提交时刻。请回答下列问题: 任务编号 提交时刻 所需时长 优先级 501 0 5 3 502 1 2 2 503 2 6 1 504 5 3 2 505 6 3 1 506 7 4 3 图a 时刻 事件类型 说明 0 0(提交) 任务501到达 1 0(提交) 任务502到达 … … … 7 0(提交) 任务506到达 7 1(查询) 查询等待队列负载 20 1(查询) 查询等待队列负载 图b (1)某日0时起,等待队列初始为空,平台有2台服务器(编号0、1)。任务信息图a和事件序列图b所示。管理员在7时刻的查询事件中,当TH=20时等待队列中的任务数为___________。(填数字) (2)函数 add_order将任务idx按优先级插入等待队列que(每个节点为[任务索引,下一指针],优先级相同的按到达先后排列。请在划线处填入合适的代码。 def add_order(head,idx): que.append([idx,-1]) #新节点加入队列 if head == -1 or tasks[que[head] [0]] [3] > tasks[idx] [3]: que[len(que)- 1] [1]=head head=len(que)- 1 else: pre=head;p=que[pre] [1] while p != -1 and _______: pre =p p=que [p][1] #新节点插到pre之后,代码略 return head (3)实现上述调度、查询模拟功能的Python程序如下,请在划线处填入合适的代码。 def proc(m,events,tasks): que=[];head=-1 srv=[0] * m #各服务器下次空闲时刻 done =[] #done:执行结果[任务编号,开始时刻,服务器]; stats =[] #stats:各次查询的等待超时任务数 i=0;cur=0;n=len(events) while i < n or head != -1: if i < n: cur=events [i] [0] #当前时刻(下一事件时刻) else: cur=99999999 #无事件,保证队列清空 #派发队首任务(优先级最高的任务) if head != -1 and tasks[que[head] [0]][1] <= cur: j =-1 for x in range(m): if srv[x] <= cur and(①____): j=x if j != -1: idx =que[head] [0] head=que[head] [1] start=max(srv[j],tasks[idx][1]) done.append([tasks [idx] [0],start,j]) ②_________ continue #处理当前时刻的所有事件 if i < n: while i < n and events[i][0] == cur: t,typ,idx=events[i] if typ == 0: head=add_order(head,idx) else: cnt=0;p=head while p != -1: if ③_________: cnt += 1 p=que[p] [1] stats.append(cnt) i += 1 return done,stats """ 服务器数量m、阈值TH已读入。任务序列tasks每条为:[任务编号,提交时刻,所需时长,优先级],已按时间升序排列。事件序列events每条为:[事件时刻,事件类型,任务索引],类型 0=提交,类型 1=查询,查询事件任务索引为-1。已按时间升序排列。 """ done,stats=proc(m,events,tasks) #输出执行结果与查询统计,代码略 第1页/共1页 学科网(北京)股份有限公司 $

资源预览图

精品解析:浙江省天域名校协作体2027届高三上学期10月学科练习 技术试卷-高中信息技术
1
精品解析:浙江省天域名校协作体2027届高三上学期10月学科练习 技术试卷-高中信息技术
2
精品解析:浙江省天域名校协作体2027届高三上学期10月学科练习 技术试卷-高中信息技术
3
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。