内容正文:
2025学年第一学期浙江省七彩阳光新高考研究联盟返校联考
高三技术试题
考生须知:
1.本卷共13页满分100分,考试时间90分钟。
2.答题前,在答题卷指定区域填写班级、姓名、考场号、座位号及准考证号并填涂相应数字。
3.所有答案必须写在答题纸上,写在试卷上无效。
4.考试结束后,只需上交答题纸。
第一部分 信息技术(共50分)
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1. 2024年9月,著名金融公司Klarna启用基于深度学习的AI客服。客服实现了全天候服务,支持35种语言,取代了700名员工,每月完成近200万次文字、语音等形式的交流。公司随后全面冻结招聘并裁员。时至今日,Klarna公司又因为AI服务体验不佳,质量差等原因重启员工招聘。下列关于数据与信息的说法,正确的是( )
A. 单纯的数字35、700、200等也包含了丰富的信息
B. 与该AI客服交流信息时,文字是一种载体
C. 该AI客服平台的数据表现形式只有文字和语音
D. AI服务体验差是因为AI提供的信息不具备价值性
2. 2024年9月,著名金融公司Klarna启用基于深度学习的AI客服。客服实现了全天候服务,支持35种语言,取代了700名员工,每月完成近200万次文字、语音等形式的交流。公司随后全面冻结招聘并裁员。时至今日,Klarna公司又因为AI服务体验不佳,质量差等原因重启员工招聘。为提高该AI客服回答用户金融交易问题的准确性,以下方法可行的是( )
A. 完善问答知识库,提高问题检索效率 B. 增加平台AI客服数量
C. 增加深度学习前期训练有效数据量 D. 提高AI客服计算机的性能
3. 2024年9月,著名金融公司Klarna启用基于深度学习的AI客服。客服实现了全天候服务,支持35种语言,取代了700名员工,每月完成近200万次文字、语音等形式的交流。公司随后全面冻结招聘并裁员。时至今日,Klarna公司又因为AI服务体验不佳,质量差等原因重启员工招聘。在低速网络中,为了减小客服语音容量,加快传输过程,下列方法适合实际应用的是( )
A. 适当降低采样频率 B. 适当减小语音音量
C. 适当增加语音量化位数 D. 随机截取部分语音数据
4. 2024年9月,著名金融公司Klarna启用基于深度学习的AI客服。客服实现了全天候服务,支持35种语言,取代了700名员工,每月完成近200万次文字、语音等形式的交流。公司随后全面冻结招聘并裁员。时至今日,Klarna公司又因为AI服务体验不佳,质量差等原因重启员工招聘。下列有关信息安全保护与信息社会责任的做法,合理的是( )
A. 公开用户平台交易记录
B. 冒用他人信息注册平台账号
C. 对AI客服回答的内容不加分辨,完全搬用
D. 将用户个人敏感信息进行加密处理
5. 某商场引入智能饮水机系统,用户可以刷卡、扫码或用手机APP控制饮水机出水;饮水机屏幕可以显示出水量消费金额等数据,并通过IoT模块与远程服务器、结算中心进行数据通信完成结算。使用手机APP也可以查询消费记录。下列关于该信息系统的功能与组成说法不正确的是( )
A. 刷卡或者扫码都可以视为系统的数据输入功能
B. 系统数据都存放在远程服务器或者数据库中,饮水机无需存储功能
C. 出水功能可以由控制器发出控制信号,并由执行器执行出水命令
D. 智能饮水机系统方便客人的同时也存在技术门槛带来的技术鸿沟
6. 某商场引入智能饮水机系统,用户可以刷卡、扫码或用手机APP控制饮水机出水;饮水机屏幕可以显示出水量消费金额等数据,并通过IoT模块与远程服务器、结算中心进行数据通信完成结算。使用手机APP也可以查询消费记录。关于该信息系统的支撑技术,下列说法正确的是( )
A. 为节约成本,该智能饮水机终端无需配备中央处理器
B. 该系统中的软件属于系统软件
C 该系统有输出功能,但没有输入功能
D. 智能饮水机系统进行远程数据通信时需要TCP/IP等网络协议支持
7. 某商场引入智能饮水机系统,用户可以刷卡、扫码或用手机APP控制饮水机出水;饮水机屏幕可以显示出水量消费金额等数据,并通过IoT模块与远程服务器、结算中心进行数据通信完成结算。使用手机APP也可以查询消费记录。关于该系统手机端APP功能和设计,正确的是( )
A. 手机端需要安装出水、停水执行器 B. 手机端需要安装数据库管理系统
C. 手机APP需要操作系统支持 D. 手机APP的设计无需考虑扩展性需求
8. 某二叉树前序遍历结果为ABCDEF,其中A是C的父节点,E和F是兄弟节点。那么该二叉树的后序遍历结果是( )
A. BACEDF B. BEFDCA C. BCDEFA D. BCEFDA
9. 已知队列中初始元素依次为3,1,2,栈初始为空。定义操作F为队首元素出队后入栈,操作P为队首元素出队后入队,操作T为栈顶元素出栈后入队。那么经过FPFTT操作后,队列内元素依次为( )
A. 1,2,3 B. 2,1,3 C. 3,1,2 D. 2,3,1
10. 已知某Python递归函数定义如下:
def f(x):
if a[x] != x:
a[x]=f(a[x])
return a[x]
若数组a=[0,1,0,5,0,4,4],则执行f(3)后,函数返回值和数组a分别是( )
A. 0 [0,1,0,0,0,0,4] B. 1 [0,1,0,0,0,4,4]
C. 1 [0,1,0,5,0,0,4] D. 0 [0,1,0,0,0,4,4]
11. 若数组a=[1,2,1,5,1,8,2,6,9,4],以下Python程序运行后,输出不可能( )
import random
i,j=0,len(a)-1
while i <= j:
mid=random.randint(i,j) #随机生成范围在i~j之间的整数
if mid >= len(a)-1:
continue #continue跳过本次循环,直接进入下一次
if a[mid] > a[mid+1]:
j=mid-1
else:
i=mid+1
print(i)
A. 1 B. 8 C. 3 D. 7
12. 有H行W列的无人机表演方阵,输入操作指令“d a x”可以将第a行(或第a列)所有无人机灯光颜色置为x,当d=1时表示行,d=2时表示列。初始颜色都为0,颜色范围为0至255。求若干操作后方阵中每种颜色的数量。如当H=3,W=4,执行4条指令时,灯光颜色变化过程如图所示。指令完成后颜色0有5个,颜色2有4个,颜色5有3个。
#输入所有指令保存在栈st中,如[[1,2,5],[2,4,0],…],t指向最后一条指令,代码略
hcnt=H;wcnt=W;h=[False]*H;w=[False]*W;c=[0]*256
while t >= 0:
if st[t][0] == 1:
if not h[st[t][1]-1]:
h[st[t][1]-1]=True;hcnt-=1
①
else:
if not w[st[t][1]-1]:
w[st[t][1]-1]=True;wcnt-=1
②
t-=1
③
for i in range(256):#输出各个颜色的数量
if c[i] > 0:
print(i,c[i])
实现颜色数量统计功能的Python程序段如上,划线处应填入的正确代码为( )
A. ①c[st[t][2]]+=hcnt ②c[st[t][2]]+=wcnt ③c[0]+=hcnt*wcnt
B. ①c[st[t][2]]+=hcnt ②c[st[t][1]]+=wcnt ③c[0]=(H-hcnt)*(W-wcnt)
C. ①c[st[t][2]]+=(H-hcnt) ②c[st[t][2]]+=(W-wcnt) ③c[0]=(H-hcnt)*(W-wcnt)
D. ①c[st[t][2]]+=wcnt ②c[st[t][2]]+=hcnt ③c[0]+=hcnt*wcnt
二、非选择题(本大题共3小题,其中第13小题8分,第14小题9分,第15小题9分,共26分)
13. 电子不停车收费系统,简称ETC,是一种基于无线通讯、车辆自动识别等技术的综合信息系统。当车辆进入识别区域时,车载电子标签与车道上的读写器通过无线微波进行短程通信,从而识别车辆信息。系统还通过网络进行后台登记、结算等处理,达到不停车快速打开闸口,避免怠速停车,减少油耗和碳排放的目的。请回答下列问题。
(1)依赖电子标签和读写器通信进行识别的技术,最有可能是____(单选,填字母:A.条码识别技术/B.RFID技术/C.Wi-Fi技术)
(2)下列关于该系统数据管理说法,正确的是____(单选,填字母)
A.后台数据登记、费用结算等操作涉及数据库的读写
B.车辆上的电子标签自带数据库,保存了车牌、车主信息、账户余额等数据
C.系统需要后台管理员维护,所以该系统的数据管理是人工管理
(3)关于该信息系统的搭建,下列说法正确的是____(多选,填字母)。
A.确定传感设备型号等硬件,属于前期准备中的需求分析
B.系统初步搭建后只需进行必要机房和道路网络测试即可投入使用
C.可以增加图像传感器实现车牌自动识别功能,减少单种识别方式的错误率
D.可以选择C/S架构搭建系统,方便用户使用浏览器访问系统
(4)若列表t=[17,49,60,74,81,179,226]表示ETC第17秒通过了一辆车,第49秒通过一辆车,第60秒通过一辆车……从第17秒开始计,到第74秒第一分钟通过了4辆车,从第81秒开始计第二分钟通过1辆车,从第179秒开始到第226秒第三分钟通过2辆车。假设某时段内共n辆车,统计每分钟车流量的部分流程图如图所示,图中①处应填入____。
(5)ETC数据可精确还原车辆轨迹,存在被盗用风险。为避免行程隐私从系统后台泄露,请提出两种数据安全保障措施。____
14. 小林对ETC产生的数据进行分析以进一步研究与提升ETC系统的功能,请回答下列问题:
(1)小林首先整理了部分高速入口的通行数据,数据如图a所示。现要统计该数据集合中,私家车进入高速的时间分布情况,并绘制如图b所示的柱形图,实现程序如下。
图a 图b
import pandas as pd
import matplotlib.pyplot as plt
df=pd.read_excel("ETC通行记录.xlsx")
plt.bar(df1["时间"],df1["车牌"])
#设置绘图参数,显示如图b所示的柱形图,代码略
方框中应填入的语句依次为____(选2项,填数字序号)。
①df1 = df[df["车型"] == "私家车"]
②df1 = df["车型" == "私家车"]
③df1 = df1.groupby("车牌",as_index=False).sum()
④df1 = df1.groupby("时间",as_index=False).count()
⑤df1 = df1.groupby("时间",as_index=False).sum()
(2)为了进一步研究哪些时间的车流量比较大,得到车流量最大的三条记录(假设不存在并列情况),可在第(1)小题处理结果的基础上再执行如下语句,请在划线处填入合适的代码。
df1=df1.sort_values("车牌",ascending=True)
df2=____
(3)假设收费站有5个通行通道,每个通道有ETC监测设备,要求车辆通行速度值不能超过40,否则发出“车辆速度过快”的警示信息。每个通道每分钟都会监测车流量,若每分钟车流量达到或超过8辆,且连续有三次(即3分钟)及以上流量值是递增的,则发出“车流量过大”的警示信息。如某通道连续六次(即6分钟)流量值为[7,1,8,8,9,10],则最后3次流量值恰好组成一组满足预警条件的序列。实现上述功能的部分Python程序如下,请在划线处填入合适代码。
prev=[0]*5 #每个通道上次检测的流量值
t=0
while True:
for station in range(5):
#获取当前通道中车辆速度v(无车辆通行时v=0),代码略
#获取当前通道中最近一分钟的流量值,保存在cnt中,代码略
if ①____:
#对当前通道发出“车辆速度过快”警示信息,代码略
if cnt >= 8:
if cnt > prev[station]:
t += 1
if ②____
#对当前通道发出“车流量过大”的警示信息,代码略
else:
t=1
else:
t=0
③____
# 延时1秒,代码略
15. 某餐厅推出了套餐优惠活动,凡用户购买一个套餐即可获得一张等额换购券,其使用规则如下:
(一)获得换购券的第二天才能开始使用,在有效期内可以换购优惠菜品(简称惠品),其他如“新品”、“饮料”等无法使用换购券;
(二)一张换购券最多只允许使用一次,且只能用于不高于换购券金额的惠品;
(三)若使用时有多张换购券满足条件,则优先使用获得时间最早的换购券。
若有用户订单信息如图a所示。其中“时间(天)”列是指订单完成时间,即优惠活动开始后的天数。在第1天、第5天和第6天购买“套餐”订单(编号1、2、3)分别可以获得金额为18、20、37的三张换购券。假设换购券有效期是30天。
订单编号
类型
金额(元)
时间(天)
订单编号
类型
金额(元)
时间(天)
1
套餐
18
1
5
饮料
20
15
2
套餐
20
5
6
惠品
36
16
3
套餐
37
6
7
惠品
14
18
4
新品
50
7
8
惠品
20
36
图a
按照规则可知,6号订单应选择3号订单获得的换购券换购;7号订单使用最先获得的18元换购券换购;对于8号订单,在已发放的换购券中仅剩2号,但该券在第35天后已经失效,因此8号订单没有换购券可用,仍需支付20元。因此该餐厅的收入为:18+20+37+50+20+0+0+20=165元。据此,请回答下列问题。
(1)如图a所示,若4号订单也是“套餐”订单,金额与时间不变,其他订单所有数据也不变,换购券只要未过期都能有效利用,餐厅收入____元。
(2)将换购券信息按时间先后顺序放到数组coupon中,如图a所示的三张换购券对应数组为[[18,1],[20,5],[37,6]],每个数组元素包含2个数据项,第1个数据项表示换购券金额(元),第2个数据项表示换购券获取时间(天)。定义函数remove()查找可使用的换购券,并将该换购券从coupon数组中删除。
def remove(pos,amount):
discount=0
i=pos
while i< len(coupon):
if amount <= coupon[i][0]:
discount = amount
coupon.pop(i) #将数组coupon中下标为i的元素删除
i += 1
return discount
请回答以下两个小题:
①初始情况下若pos=0,amount=36,调用remove函数后,则数组还剩____个元素。
②若删除加框处代码,则____(选填字母:A.能/B.不能)保证该函数的正常功能。
(3)定义函数sort()实现将订单数据data按时间从小到大的顺序排列。订单数据放在链表data中,链表用Python列表模拟实现,节点各字段含义如图b所示。请在划线处填入合适的代码。
0
订单类型
1
金额
2
时间
3
下一个节点位置
图b
def sort(head,n): #n表示链表原始节点个数
p = data[head][3]
tail = head; dummy = n
data.append([-1,0,-1,head])
while p != -1:
if data[tai1][2] <= data[p][2]:
tail = data[tail][3]
else:
q = dummy
while data[data[q][3]][2] < data[p][2]:
q = data[q][3]
data[tail][3] = data[p][3]
____
data[q][3] = p
p = data[tail][3]
return data[dummy][3]
(4)主程序统计了所有未过期换购券都能有效利用时餐厅总收入,请在划线处填入合适的代码。
# 输入所有订单数据存入链表data,换购券有效时长用变量expired表示,代码略
# data数据如[["套餐",20,5,2],["套餐",18,1,0]……]
h = sort(head,len(data)) #链表data的头指针为head
p=h; income=0; coupon=[]; pos=0
while p != -1:
income += data[p][1]
if data[p][0] == "套餐":
coupon.append([data[p][1],data[p][2]]) #在数组coupon的末尾添加元素
elif data[p][0]=="惠品":
while pos < len(coupon) and ①____:
pos += 1
if pos < len(coupon) and coupon[pos][1] < data[p][2]:
discount=②____
income -= discount
p = data[p][3]
print(income)
第1页/共1页
学科网(北京)股份有限公司
$$
2025学年第一学期浙江省七彩阳光新高考研究联盟返校联考
高三技术试题
考生须知:
1.本卷共13页满分100分,考试时间90分钟。
2.答题前,在答题卷指定区域填写班级、姓名、考场号、座位号及准考证号并填涂相应数字。
3.所有答案必须写在答题纸上,写在试卷上无效。
4.考试结束后,只需上交答题纸。
第一部分 信息技术(共50分)
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1. 2024年9月,著名金融公司Klarna启用基于深度学习的AI客服。客服实现了全天候服务,支持35种语言,取代了700名员工,每月完成近200万次文字、语音等形式的交流。公司随后全面冻结招聘并裁员。时至今日,Klarna公司又因为AI服务体验不佳,质量差等原因重启员工招聘。下列关于数据与信息的说法,正确的是( )
A. 单纯的数字35、700、200等也包含了丰富的信息
B. 与该AI客服交流信息时,文字是一种载体
C. 该AI客服平台的数据表现形式只有文字和语音
D. AI服务体验差是因为AI提供的信息不具备价值性
【答案】B
【解析】
【详解】本题考查数据与信息认识和理解。单纯的数据没有意义,将数据放在某个语境中,或在某个真实场景中,数据才有意义,这就是信息,选项A错误。选项C,材料中提到了AI交流形式有文字、语音等,结合日常AI应用可知数据表现形式还可以是图片、视频等。选项C错误。选项D,信息有价值性,针对不同的人,信息有不同的价值。选项D错误。信息是文字等数据解释后产生的意义,文字是信息的载体,选项B正确。故答案为:B。
2. 2024年9月,著名金融公司Klarna启用基于深度学习的AI客服。客服实现了全天候服务,支持35种语言,取代了700名员工,每月完成近200万次文字、语音等形式的交流。公司随后全面冻结招聘并裁员。时至今日,Klarna公司又因为AI服务体验不佳,质量差等原因重启员工招聘。为提高该AI客服回答用户金融交易问题的准确性,以下方法可行的是( )
A. 完善问答知识库,提高问题检索效率 B. 增加平台AI客服数量
C. 增加深度学习前期训练的有效数据量 D. 提高AI客服计算机的性能
【答案】C
【解析】
【详解】本题考查人工智能相关内容。由题意可知该AI是基于大数据深度学习,因此可以通过前期训练语料的数量和有效性提高其智能性。而增加AI客服数量或者计算机性能,对正确性没有帮助。选项A中描述的是符号主义人工智能实现方式,与该AI实现方式有悖。故本题答案是C选项。
3. 2024年9月,著名金融公司Klarna启用基于深度学习的AI客服。客服实现了全天候服务,支持35种语言,取代了700名员工,每月完成近200万次文字、语音等形式的交流。公司随后全面冻结招聘并裁员。时至今日,Klarna公司又因为AI服务体验不佳,质量差等原因重启员工招聘。在低速网络中,为了减小客服语音容量,加快传输过程,下列方法适合实际应用的是( )
A. 适当降低采样频率 B. 适当减小语音音量
C. 适当增加语音量化位数 D. 随机截取部分语音数据
【答案】A
【解析】
【详解】本题考查数据编码与音频数字化。音频数字化需经过采样、量化和编码三部,采样频率越低,音频数据量越小,音质越差;量化位数越小,音频数据量也越小。音频容量与音量无关。而选项D虽然会减少容量,但同时可能会丢失重要数据,因此应该选择A。故答案为:A。
4. 2024年9月,著名金融公司Klarna启用基于深度学习的AI客服。客服实现了全天候服务,支持35种语言,取代了700名员工,每月完成近200万次文字、语音等形式的交流。公司随后全面冻结招聘并裁员。时至今日,Klarna公司又因为AI服务体验不佳,质量差等原因重启员工招聘。下列有关信息安全保护与信息社会责任的做法,合理的是( )
A. 公开用户平台交易记录
B. 冒用他人信息注册平台账号
C. 对AI客服回答的内容不加分辨,完全搬用
D. 将用户个人敏感信息进行加密处理
【答案】D
【解析】
【详解】本题考查信息安全保护与信息社会责任。《中华人民共和国网络安全法》明确规定了网络运营者、单位和个人在信息安全中应承担的责任和权利,选项A和选项B都是不正确的做法。选项C,现有AI生成的内容也并非完全正确,需要鉴别使用。故答案为:D。
5. 某商场引入智能饮水机系统,用户可以刷卡、扫码或用手机APP控制饮水机出水;饮水机屏幕可以显示出水量消费金额等数据,并通过IoT模块与远程服务器、结算中心进行数据通信完成结算。使用手机APP也可以查询消费记录。下列关于该信息系统的功能与组成说法不正确的是( )
A. 刷卡或者扫码都可以视为系统的数据输入功能
B. 系统数据都存放在远程服务器或者数据库中,饮水机无需存储功能
C. 出水功能可以由控制器发出控制信号,并由执行器执行出水命令
D. 智能饮水机系统方便客人的同时也存在技术门槛带来的技术鸿沟
【答案】B
【解析】
【详解】本题考查信息系统的功能与组成。选项B,存储是信息系统重要的功能,存储器也是系统硬件必不可少的组别部分,信息系统中远程服务和本地智能终端都需要存储器及存储功能的支持。故答案为:B。
6. 某商场引入智能饮水机系统,用户可以刷卡、扫码或用手机APP控制饮水机出水;饮水机屏幕可以显示出水量消费金额等数据,并通过IoT模块与远程服务器、结算中心进行数据通信完成结算。使用手机APP也可以查询消费记录。关于该信息系统支撑技术,下列说法正确的是( )
A. 为节约成本,该智能饮水机终端无需配备中央处理器
B. 该系统中的软件属于系统软件
C. 该系统有输出功能,但没有输入功能
D. 智能饮水机系统进行远程数据通信时需要TCP/IP等网络协议支持
【答案】D
【解析】
【详解】本题考查信息系统软件、硬件等支撑技术。选项A:智能终端与计算机的体系结构类似,也需要中央处理器,选项A错误。选项B:系统软件是能负责管理计算机硬件,协调计算机及外设,支持软件开发和运行的软件。主要有操作系统、数据库管理系统等。智能饮水机软件属于应用软件。选项C:输入和输出是信息系统的基本功能,刷卡、扫码都可以视为输入功能。选项D:移动终端联网需要移动通信网或计算机网络支持,TCP/IP是网络连接中最重要的协议,是很多协议的基础,选项D正确。故答案为:D。
7. 某商场引入智能饮水机系统,用户可以刷卡、扫码或用手机APP控制饮水机出水;饮水机屏幕可以显示出水量消费金额等数据,并通过IoT模块与远程服务器、结算中心进行数据通信完成结算。使用手机APP也可以查询消费记录。关于该系统手机端APP功能和设计,正确的是( )
A. 手机端需要安装出水、停水执行器 B. 手机端需要安装数据库管理系统
C. 手机APP需要操作系统支持 D. 手机APP的设计无需考虑扩展性需求
【答案】C
【解析】
【详解】本题考查信息系统的需求分析、功能设计。手机APP是客户端程序,可以发出控制指令,具体执行需要饮水机终端完成,选项A错误。数据库管理系统一般也安装在服务器,APP无需安装,选项B错误。手机APP运行也需要操作系统支持,选项C正确。系统设计要考虑技术可扩展性和业务功能扩展性等,选项D错误。故答案为:C。
8. 某二叉树前序遍历结果为ABCDEF,其中A是C的父节点,E和F是兄弟节点。那么该二叉树的后序遍历结果是( )
A BACEDF B. BEFDCA C. BCDEFA D. BCEFDA
【答案】B
【解析】
【详解】本题考查二叉树。由于A是C的父节点,前序序列中三者为ABC,因此B只能是A的做儿子,C是A的右儿子。同理,EF是兄弟,而前序序列为DEF,那么D也智能是EF的父节点,E是左儿子。该二叉树形态只有以下两种,它们的后续遍历序列都是BEFDCA。故答案为:B。
9. 已知队列中初始元素依次为3,1,2,栈初始为空。定义操作F为队首元素出队后入栈,操作P为队首元素出队后入队,操作T为栈顶元素出栈后入队。那么经过FPFTT操作后,队列内元素依次为( )
A. 1,2,3 B. 2,1,3 C. 3,1,2 D. 2,3,1
【答案】A
【解析】
【详解】考查栈和队列的综合操作。依题目顺序依次模拟可得:
操作
队列元素(左侧是队首)
栈中元素(右侧是栈顶)
3 1 2
F
1 2
3
P
2 1
3
F
1
3 2
T
1 2
3
T
1 2 3
因此,队列内元素依次为1,2,3。故答案为:A。
10. 已知某Python递归函数定义如下:
def f(x):
if a[x] != x:
a[x]=f(a[x])
return a[x]
若数组a=[0,1,0,5,0,4,4],则执行f(3)后,函数返回值和数组a分别是( )
A. 0 [0,1,0,0,0,0,4] B. 1 [0,1,0,0,0,4,4]
C. 1 [0,1,0,5,0,0,4] D. 0 [0,1,0,0,0,4,4]
【答案】A
【解析】
【详解】本题考查递归函数的理解。各次递归调用与返回值如图所示:
返回时修改了a[5]和a[3]的值为0。故答案为:A。
11. 若数组a=[1,2,1,5,1,8,2,6,9,4],以下Python程序运行后,输出不可能是( )
import random
i,j=0,len(a)-1
while i <= j:
mid=random.randint(i,j) #随机生成范围在i~j之间的整数
if mid >= len(a)-1:
continue #continue跳过本次循环,直接进入下一次
if a[mid] > a[mid+1]:
j=mid-1
else:
i=mid+1
print(i)
A. 1 B. 8 C. 3 D. 7
【答案】D
【解析】
【详解】本题考查Python程序综合应用以及二分查找算法。由i、j的初始值可得,mid的值为[0,9]中的随机数。当a[mid]值大于右侧值的时候,j移动到mid;反之,当a[mid]小于等于右侧值时,i移到mid+1。这告诉我们程序是在缩小查找区间,找比当前a[mid]更大的值。如,假设当mid指向2号元素1时,i能指向1的下一个元素5;当mid一开始就指向元素5时,j指向元素5本身,然后左侧位置i会不断往右收缩查找区间,一直到i==j时,结束循环,此时i和j都必然指向元素5。该程序可以找到某个比左右两侧元素都大的那些元素。比如元素2、5、8和9,它们的索引分别是1、3、5和8,所以答案选D,索引7不可能出现。故答案为:D。
12. 有H行W列的无人机表演方阵,输入操作指令“d a x”可以将第a行(或第a列)所有无人机灯光颜色置为x,当d=1时表示行,d=2时表示列。初始颜色都为0,颜色范围为0至255。求若干操作后方阵中每种颜色的数量。如当H=3,W=4,执行4条指令时,灯光颜色变化过程如图所示。指令完成后颜色0有5个,颜色2有4个,颜色5有3个。
#输入所有指令保存在栈st中,如[[1,2,5],[2,4,0],…],t指向最后一条指令,代码略
hcnt=H;wcnt=W;h=[False]*H;w=[False]*W;c=[0]*256
while t >= 0:
if st[t][0] == 1:
if not h[st[t][1]-1]:
h[st[t][1]-1]=True;hcnt-=1
①
else:
if not w[st[t][1]-1]:
w[st[t][1]-1]=True;wcnt-=1
②
t-=1
③
for i in range(256):#输出各个颜色的数量
if c[i] > 0:
print(i,c[i])
实现颜色数量统计功能的Python程序段如上,划线处应填入的正确代码为( )
A. ①c[st[t][2]]+=hcnt ②c[st[t][2]]+=wcnt ③c[0]+=hcnt*wcnt
B. ①c[st[t][2]]+=hcnt ②c[st[t][1]]+=wcnt ③c[0]=(H-hcnt)*(W-wcnt)
C. ①c[st[t][2]]+=(H-hcnt) ②c[st[t][2]]+=(W-wcnt) ③c[0]=(H-hcnt)*(W-wcnt)
D. ①c[st[t][2]]+=wcnt ②c[st[t][2]]+=hcnt ③c[0]+=hcnt*wcnt
【答案】D
【解析】
【详解】本题考查栈操作相关内容。分析题目内容,推知:
按原有指令顺序模拟各个指令的执行很难统计颜色值。使用栈结构,将指令逆序处理,每条逆序处理时的指令都是当前栈顶指令,也表示下一条指令中颜色的改变都无法替代当前栈顶的指令出现的颜色变化。由程序知,h[i]标记了i行是否改色,若已改色,该行无须处理(因为逆序处理,先处理最后确定的颜色,再返回去处理之前改色了但是不知道是否会被后续变化取代的颜色),w[i]表示第i列是否已改色。hcnt表示当前未改色的行数,当某行改色后,hcnt要减1;wcnt是标记列数,原理类似。第①空,当某行改色时,这一行最多能改色的单元格数由列数wcnt决定,因此颜色st[t][2]的数量要加wcnt个。同理,当某一列要改色时,这一列最多能改色的单元格数是hcnt个。对于第③空,由于所有指令都操作完后,某些单元格可能从未改色,它的数量就是当前剩余的行数*当前剩余的列数。故本题答案是D选项。
二、非选择题(本大题共3小题,其中第13小题8分,第14小题9分,第15小题9分,共26分)
13. 电子不停车收费系统,简称ETC,是一种基于无线通讯、车辆自动识别等技术的综合信息系统。当车辆进入识别区域时,车载电子标签与车道上的读写器通过无线微波进行短程通信,从而识别车辆信息。系统还通过网络进行后台登记、结算等处理,达到不停车快速打开闸口,避免怠速停车,减少油耗和碳排放的目的。请回答下列问题。
(1)依赖电子标签和读写器通信进行识别的技术,最有可能是____(单选,填字母:A.条码识别技术/B.RFID技术/C.Wi-Fi技术)
(2)下列关于该系统数据管理的说法,正确的是____(单选,填字母)
A.后台数据登记、费用结算等操作涉及数据库的读写
B.车辆上的电子标签自带数据库,保存了车牌、车主信息、账户余额等数据
C.系统需要后台管理员维护,所以该系统的数据管理是人工管理
(3)关于该信息系统的搭建,下列说法正确的是____(多选,填字母)。
A.确定传感设备型号等硬件,属于前期准备中的需求分析
B.系统初步搭建后只需进行必要的机房和道路网络测试即可投入使用
C.可以增加图像传感器实现车牌自动识别功能,减少单种识别方式的错误率
D.可以选择C/S架构搭建系统,方便用户使用浏览器访问系统
(4)若列表t=[17,49,60,74,81,179,226]表示ETC第17秒通过了一辆车,第49秒通过一辆车,第60秒通过一辆车……从第17秒开始计,到第74秒第一分钟通过了4辆车,从第81秒开始计第二分钟通过1辆车,从第179秒开始到第226秒第三分钟通过2辆车。假设某时段内共n辆车,统计每分钟车流量的部分流程图如图所示,图中①处应填入____。
(5)ETC数据可精确还原车辆轨迹,存在被盗用风险。为避免行程隐私从系统后台泄露,请提出两种数据安全保障措施。____
【答案】 ①. B ②. A ③. AC ④. t[j]-t[i] <= 60 或 t[j]-t[i] ≤ 60 或其他等价答案 ⑤. ①加密行车轨迹的个人敏感数据存储;②使用身份认证登录后台并对不同用户不同的访问控制策略;③安装并开启防火墙;④安装防病毒软件,定时更新病毒库和扫描系统
【解析】
【详解】本题考查信息系统综合搭建相关知识。
(1)电子标签与读写器通信技术结合的识别目前主要是RFID技术;Wi-Fi是一种无线通信技术,一般不依赖电子标签和读写器进行通信;条码识别也不需要电子标签和读写器支持。故答案为:B。
(2)数据管理包括人工管理、文件管理和数据库管理。目前处于数据库管理阶段,系统数据库虽然需要管理员维护,但也是属于数据库管理。选项C错误。电子标签存储容量非常小,一般只保存卡号等信息,更多的数据都存储与数据库,选项B错误。故答案为:A。
(3)选项A:对于系统的功能需求、性能需求、资源和环境需求分析都属于前期准备中的需求分析,此项正确。选项B:系统搭建完毕后,需要软件测试、硬件测试和网络测试,此项错误。选项C:RFID可能会产生识别遗漏,车牌识别可以作为有效补充,此项正确。选项D:C/S架构需要额外开发客户端程序,B/S架构下客户端只需浏览器即可,此项错误。故答案为:AC。
(4)从流程图看,变量j遍历了列表t的每个时刻,变量i指示了当前一分钟内最早的时刻。因此当t[j]-t[i]≤60时,该一分钟内车辆数cnt加1,变量j后移一个位置;否则,超过一分钟时,输出之前的车辆数cnt,并且cnt重置为0,i指向j的位置表示新的一分钟的起始时刻。故答案为:t[j]-t[i]≤60。
(5)从数据安全角度作答,可以用加密等手段。从信息系统安全角度作答:可以用身份认证+访问控制、安装防火墙、防病毒软件等方法。
14. 小林对ETC产生的数据进行分析以进一步研究与提升ETC系统的功能,请回答下列问题:
(1)小林首先整理了部分高速入口的通行数据,数据如图a所示。现要统计该数据集合中,私家车进入高速的时间分布情况,并绘制如图b所示的柱形图,实现程序如下。
图a 图b
import pandas as pd
import matplotlib.pyplot as plt
df=pd.read_excel("ETC通行记录.xlsx")
plt.bar(df1["时间"],df1["车牌"])
#设置绘图参数,显示如图b所示的柱形图,代码略
方框中应填入的语句依次为____(选2项,填数字序号)。
①df1 = df[df["车型"] == "私家车"]
②df1 = df["车型" == "私家车"]
③df1 = df1.groupby("车牌",as_index=False).sum()
④df1 = df1.groupby("时间",as_index=False).count()
⑤df1 = df1.groupby("时间",as_index=False).sum()
(2)为了进一步研究哪些时间车流量比较大,得到车流量最大的三条记录(假设不存在并列情况),可在第(1)小题处理结果的基础上再执行如下语句,请在划线处填入合适的代码。
df1=df1.sort_values("车牌",ascending=True)
df2=____
(3)假设收费站有5个通行通道,每个通道有ETC监测设备,要求车辆通行速度值不能超过40,否则发出“车辆速度过快”的警示信息。每个通道每分钟都会监测车流量,若每分钟车流量达到或超过8辆,且连续有三次(即3分钟)及以上流量值是递增的,则发出“车流量过大”的警示信息。如某通道连续六次(即6分钟)流量值为[7,1,8,8,9,10],则最后3次流量值恰好组成一组满足预警条件的序列。实现上述功能的部分Python程序如下,请在划线处填入合适代码。
prev=[0]*5 #每个通道上次检测的流量值
t=0
while True:
for station in range(5):
#获取当前通道中车辆速度v(无车辆通行时v=0),代码略
#获取当前通道中最近一分钟的流量值,保存在cnt中,代码略
if ①____:
#对当前通道发出“车辆速度过快”警示信息,代码略
if cnt >= 8:
if cnt > prev[station]:
t += 1
if ②____
#对当前通道发出“车流量过大”的警示信息,代码略
else:
t=1
else:
t=0
③____
# 延时1秒,代码略
【答案】 ①. ①④ ②. df1.tail(3)或df1[-3:]或df1[len(df1)-3:] ③. v > 40 ④. t >= 3或t > 2 ⑤. prev[station]=cnt
【解析】
【详解】本题考查pandas数据处理与Python数据处理。
(1)由选项可知,加框处的程序主要是筛选和分组操作。筛选的语句格式应该选择①。对于分组操作,分组的字段应该选择“时间”,以便让相同时间的数据进行合并。合并的计算函数应该选择count()即计数功能,而不是求和,因为数据项不涉及数值运算。因此答案选择④。故答案为:①④。
(2)由排序程序可知,数据按各个时段车牌数量递增排序,因此最大值排在数据的后面。故答案为:df1.tail(3)或df1[-3:]或df1[len(df1)-3:]。
(3)考查了信息系统在不同情景下条件设定和数据处理。从条件成立的执行语句可以看出,第①空是速度超过40。故答案为:v > 40。条件cnt>=8告诉我们车辆数达到了临界值,那么cnt>prev[station]就是当前车流量大于该通道的前一次车流量,因此计数器也要累加一。故答案为:t >= 3或t > 2。处理完当前的车流量cnt后,cnt值需要保存,以便进行下次流量的对比。由程序知,station相当于指示了通道序号,因此cnt值应该保存在prev[station]中。故答案为:prev[station]=cnt。
15. 某餐厅推出了套餐优惠活动,凡用户购买一个套餐即可获得一张等额换购券,其使用规则如下:
(一)获得换购券的第二天才能开始使用,在有效期内可以换购优惠菜品(简称惠品),其他如“新品”、“饮料”等无法使用换购券;
(二)一张换购券最多只允许使用一次,且只能用于不高于换购券金额的惠品;
(三)若使用时有多张换购券满足条件,则优先使用获得时间最早的换购券。
若有用户订单信息如图a所示。其中“时间(天)”列是指订单完成时间,即优惠活动开始后的天数。在第1天、第5天和第6天购买“套餐”订单(编号1、2、3)分别可以获得金额为18、20、37的三张换购券。假设换购券有效期是30天。
订单编号
类型
金额(元)
时间(天)
订单编号
类型
金额(元)
时间(天)
1
套餐
18
1
5
饮料
20
15
2
套餐
20
5
6
惠品
36
16
3
套餐
37
6
7
惠品
14
18
4
新品
50
7
8
惠品
20
36
图a
按照规则可知,6号订单应选择3号订单获得的换购券换购;7号订单使用最先获得的18元换购券换购;对于8号订单,在已发放的换购券中仅剩2号,但该券在第35天后已经失效,因此8号订单没有换购券可用,仍需支付20元。因此该餐厅的收入为:18+20+37+50+20+0+0+20=165元。据此,请回答下列问题。
(1)如图a所示,若4号订单也是“套餐”订单,金额与时间不变,其他订单所有数据也不变,换购券只要未过期都能有效利用,餐厅收入____元。
(2)将换购券信息按时间先后顺序放到数组coupon中,如图a所示的三张换购券对应数组为[[18,1],[20,5],[37,6]],每个数组元素包含2个数据项,第1个数据项表示换购券金额(元),第2个数据项表示换购券获取时间(天)。定义函数remove()查找可使用的换购券,并将该换购券从coupon数组中删除。
def remove(pos,amount):
discount=0
i=pos
while i< len(coupon):
if amount <= coupon[i][0]:
discount = amount
coupon.pop(i) #将数组coupon中下标为i的元素删除
i += 1
return discount
请回答以下两个小题:
①初始情况下若pos=0,amount=36,调用remove函数后,则数组还剩____个元素。
②若删除加框处代码,则____(选填字母:A.能/B.不能)保证该函数的正常功能。
(3)定义函数sort()实现将订单数据data按时间从小到大的顺序排列。订单数据放在链表data中,链表用Python列表模拟实现,节点各字段含义如图b所示。请在划线处填入合适的代码。
0
订单类型
1
金额
2
时间
3
下一个节点位置
图b
def sort(head,n): #n表示链表原始节点个数
p = data[head][3]
tail = head; dummy = n
data.append([-1,0,-1,head])
while p != -1:
if data[tai1][2] <= data[p][2]:
tail = data[tail][3]
else:
q = dummy
while data[data[q][3]][2] < data[p][2]:
q = data[q][3]
data[tail][3] = data[p][3]
____
data[q][3] = p
p = data[tail][3]
return data[dummy][3]
(4)主程序统计了所有未过期换购券都能有效利用时餐厅总收入,请在划线处填入合适的代码。
# 输入所有订单数据存入链表data,换购券有效时长用变量expired表示,代码略
# data数据如[["套餐",20,5,2],["套餐",18,1,0]……]
h = sort(head,len(data)) #链表data的头指针为head
p=h; income=0; coupon=[]; pos=0
while p != -1:
income += data[p][1]
if data[p][0] == "套餐":
coupon.append([data[p][1],data[p][2]]) #在数组coupon的末尾添加元素
elif data[p][0]=="惠品":
while pos < len(coupon) and ①____:
pos += 1
if pos < len(coupon) and coupon[pos][1] < data[p][2]:
discount=②____
income -= discount
p = data[p][3]
print(income)
【答案】 ①. 145 ②. 2 ③. B ④. data[p][3]=data[q][3] ⑤. coupon[pos][1]+expired < data[p][2] ⑥. remove(pos,data[p][1])
【解析】
【详解】本题考查Python综合应用。
(1)4号订单若也是“套餐”,则会新增一张50元的换购券,有效时长是7+30=37天,因此第36天的8号订单可以使用该换购券,减免20元,餐厅收入仍是前五个订单,共145元。故答案为:145。
(2)①当pos=0,amount=36时,模拟程序可以得到数组尾部元素满足amount<=coupon[q][0],于是尾部元素将被删除,数组只剩2个元素,数组变为[[18,1],[20,5]]。②删除加框处代码break,函数将可能删除多个数组元素,因此功能不同。故答案为:2、B。
(3)该排序算法实现了链表的插入排序。其中dummy指针指向了链表head前面一个节点,它“时间”值为-1,小于所有其他正常订单的时间,避免在dummy前插入节点。指针tail指向有序链表的最后一个节点,初始指向head。指针p是当前待比较(待插入)的节点,指针q指向待插入位置的前一个节点,while循环处是时间值的比较。让q的下一个节点的值与p的值作比较,小于等于时移动q指针。跳出循环时q的下一个节点时间大于等于p节点的时间,于是p可以插在q的后面。操作步骤是:先有序链表的尾节点tail指向p的下一个;p的下一个节点指向q的下一个节点;q的下一个节点指向p。这里缺少第二步。故答案为:data[p][3]=data[q][3]。
(4)指针h指向了按时间升序排序的订单数据链表的头节点。pos指向了换购券数组中第一个满足时间条件的元素。当订单是“套餐”时获得等额换购券,该元素入coupon数组。当订单是“惠品”时允许使用换购券,那么此时需要在coupon数组中按时间顺序查找(有多张换购券优先使用最早获得的)面值不小于当前订单金额的换购券。查找前还需去掉“过期”的换购券,程序第①空是在pos不超过数组最大下标前提下,让其跳过过期换购券,答案为coupon[pos][1]+expired<data[p][2]。第②空是查找可用的换购券,减免金额后删除换购券,调用第(2)小题的remove函数,其中amount参数为当前订单的金额。该空的答案为remove(pos,data[p][1])。故答案为:coupon[pos][1]+expired < data[p][2]、remove(pos,data[p][1])。
第1页/共1页
学科网(北京)股份有限公司
$$