内容正文:
嘉兴市高三模拟测试
技术试题卷
(2024-12)
本试题卷分信息技术和通用技术两部分。满分100分,考试时间90分钟。
第一部分信息技术(共50分)
一、单选题(本大题共12小题,每小题2分,共24分)
1. 某汽车智能驾驶系统,通过传感器实时捕捉各种道路与环境数据,并结合卫星地图和人工智能技术,实现智能驾驶,如自动变道、智能泊车等,系统中的数据在传输和存储时均进行了加密处理。下列关于该系统中数据与信息的描述,正确的是( )
A. 数据传输可以不依附载体
B. 传感器捕捉的图像属于结构化数据
C. 系统中的数据是以二进制形式存储的
D. 数据处理过程中不会产生新的有价值的信息
【答案】C
【解析】
【详解】本题考查数据、信息。C 选项正确,计算机系统中的数据是以二进制形式存储的;A 选项错误,数据传输必须依附载体,如网络、存储介质等;B 选项错误,传感器捕捉的图像属于非结构化数据;D 选项错误,数据处理过程中可能会产生新的有价值的信息,如通过分析驾驶数据得出路况规律等。因此,本题选择C。
2. 某汽车智能驾驶系统,通过传感器实时捕捉各种道路与环境数据,并结合卫星地图和人工智能技术,实现智能驾驶,如自动变道、智能泊车等,系统中的数据在传输和存储时均进行了加密处理。下列有关该系统信息安全与社会责任的说法,正确的是( )
A. 用户的行车数据可公开用于研究和开发
B. 数据的加密传输和存储是为了提高数据的安全性
C. 系统中加密算法采用的加密密钥与解密密钥必须相同
D. 未经用户授权将行车中拍摄的面部数据用于改进用户体验
【答案】B
【解析】
【详解】本题考查信息安全与社会责任。B 选项正确,数据的加密传输和存储能有效防止数据被窃取或篡改,提高数据安全性,A 选项错误,用户的行车数据涉及隐私,未经授权不可公开用于研究和开发;C 选项错误,加密算法有对称加密(加密和解密密钥相同)和非对称加密(加密和解密密钥不同),该系统未明确说明加密算法类型,D 选项错误,未经用户授权使用行车中拍摄的面部数据侵犯用户隐私。因此,本题选择B。
3. 某汽车智能驾驶系统,通过传感器实时捕捉各种道路与环境数据,并结合卫星地图和人工智能技术,实现智能驾驶,如自动变道、智能泊车等,系统中的数据在传输和存储时均进行了加密处理。下列有关人工智能技术在该系统中应用的说法,正确的是( )
A. 智能驾驶可以完全替代人类,实现自动驾驶
B. 自动上传行车视频到服务器是人工智能技术的应用
C. 智能驾驶功能的实现依赖于各种传感器获取的数据
D. 人工智能在智能驾驶系统中的应用仅限于深度学习领域
【答案】C
【解析】
【详解】本题考查人工智能。C 选项正确,智能驾驶功能的实现依赖于传感器获取道路、环境等数据,这些数据是人工智能算法决策的基础;A 选项错误,智能驾驶目前还不能完全替代人类,仍需要人类驾驶员在某些情况下接管车辆;B 选项错误,自动上传行车视频到服务器不属于人工智能技术的典型应用;D 选项错误,人工智能在智能驾驶系统中的应用包括机器学习、计算机视觉等多个领域,不限于深度学习。因此,本题选择C。
4. 某汽车智能驾驶系统,通过传感器实时捕捉各种道路与环境数据,并结合卫星地图和人工智能技术,实现智能驾驶,如自动变道、智能泊车等,系统中的数据在传输和存储时均进行了加密处理。下列关于该系统中数据处理的说法,不正确的是( )
A. 将高清视频进行实时压缩,可节省存储空间
B. 采集道路图像时,需将模拟信号进行数字化处理
C. 为优化传输效率,将MP3格式的音频转换成WAV格式
D. 该系统采用大数据处理技术,以满足对海量数据的实时处理
【答案】C
【解析】
【详解】本题考查数据。MP3 格式本身就是为了压缩音频数据,在相同音频质量下,MP3 格式通常比 WAV 格式占用空间小,为优化传输效率,不应将 MP3 格式转换为 WAV 格式。因此,本题选择C。
5. 某景区票务系统支持网络订票、自助售取票机、手持式售票检票机等进行售票,通过手持式售票检票机、检票闸机等设备进行检票;在网上可实时查询客流量、剩余票数等数据。检票闸机支持二维码、身份证等检票方式;检票成功后闸机门自动打开。下列关于该系统组成与功能的描述,正确的是( )
A. 系统中的服务器无需安装应用软件
B. 扫描二维码检票的过程中使用了射频识别技术
C. 仅通过网页查看景区客流量的人员不属于该系统的用户
D. 检票时闸机门能自动打开体现了传感与控制技术的应用
【答案】D
【解析】
【详解】本题考查信息系统组成与功能。D 选项正确,检票时闸机门能自动打开是通过传感技术检票,当检票成功后,控制系统控制闸机门打开,体现了传感与控制技术的应用。A 选项错误,系统中的服务器需要安装应用软件来处理各种业务逻辑,如票务管理、数据存储与查询等;B 选项错误,扫描二维码检票使用的是二维码识别技术,射频识别技术(RFID)用于识别电子标签;C 选项错误,仅通过网页查看景区客流量的人员也是该系统的用户,因为他们与系统进行了交互并获取了系统提供的信息。因此,本题选择D。
6. 某景区票务系统支持网络订票、自助售取票机、手持式售票检票机等进行售票,通过手持式售票检票机、检票闸机等设备进行检票;在网上可实时查询客流量、剩余票数等数据。检票闸机支持二维码、身份证等检票方式;检票成功后闸机门自动打开。下列关于该系统中网络技术的说法,正确的是( )
A. 该系统的网络属于局域网
B. 检票闸机与服务器间的数据传输需遵循网络协议
C. 使用手机查看客流量必须通过移动通信网络才能完成
D. 使用手持式售票检票机进行售票和检票无需服务器支持
【答案】B
【解析】
【详解】本题考查网络。B 选项正确,检票闸机与服务器间的数据传输必须遵循网络协议,以确保数据准确、可靠地传输;A 选项错误,该景区票务系统支持网络订票,因此不属于局域网;C 选项错误,使用手机查看客流量不一定必须通过移动通信网络,也可通过wifi等网络访问服务器查看客流量;D 选项错误,手持式售票检票机进行售票和检票时需要与服务器进行数据交互,如验证票的有效性、上传售票数据等。因此,本题选择B。
7. 用户登录某系统时,若连续5次输入密码错误,账号将被锁定。验证部分的算法如图所示(正确密码已存储在变量key中)。某同学对虚线框中算法进行了完善,Python代码如下:
if c<5:
print('第',c,'次输入错误!')
pwd=input('请重新输入密码:')
else:
print(c,'次输入错误,账号已锁定!')
f=True
测试程序时发现缺少了计数代码c+=1,该代码应添加的位置是( )
A. “else:”的上一行 B. “else:”的下一行
C. “if c<5:”的上一行 D. “if c<5:”的下一行
【答案】A
【解析】
【详解】本题考查分支结构的程序实现。 这段代码的目的是实现密码验证功能,当对用户输入密码次数进行计数,并在错误次数达到5次时锁定账号。因此,为了保证if语句控制的print()语句输出正确的c值,并且准确记录输入密码的次数,计数代码c+=1应该在每次输入密码后执行,即“else:”的上一行。因此,本题选择A。
8. 某完全二叉树总节点数为10,用数字[1~10]逐层依次标示各个节点。下列关于该树的说法,不正确的是( )
A. 叶子节点数比度为2的节点数多1
B. 中序遍历的顺序为8-9-4-10-5-2-1-6-3-7
C. 若某节点无左孩子节点,则此节点亦无右孩子节点
D. 用一维数组存储该树,所有节点对应的数组元素一定是连续的
【答案】B
【解析】
【详解】本题考查二叉树。由于该二叉树为完全二叉树且总节点数为10,用数字[1~10]逐层依次标示各个节点。因此,可画出该二叉树如下所示。B选项错误,该树中序遍历结果为:8-4-9-2-10-5-1-6-3-7。因此,本题选择B。
9. 一个栈的入栈序列为1,2,3,4,5,其出栈序列为s1,s2,s3,s4,s5。若s2是3,则s1不可能是( )
A. 1 B. 2 C. 4 D. 5
【答案】D
【解析】
【详解】本题主要考查栈数据结构。1先入栈后再出栈,接着2、3入栈,3出栈,s1可能是1;1先入栈未出栈,其次2入栈后再出栈,s1可能是2;1、2、3、4依次入栈,接着4和3出栈,s1可能是4。3和5之间有4,故s1不可能是5,故本题选D选项。
10. 某使用二分查找算法的Python程序段如下:
a=[21,22,23,24,25,26,27,28,29,30]
key=int(input("key="))
c=0
i,j=0,9
m=(i+j)//2
while i<=j and key!=a[m]:
if a[m] < key:
i=m+1
else:
j=m-1
m=(i+j)//2
c+=1
print(c)
若程序运行后,输出结果是3,则key的值可能是( )
A. 21或23 B. 24或27 C. 26或29 D. 23或30
【答案】B
【解析】
【详解】本题考查二分查找。根据程序可以画出该二分查找树如下图所示,由于该程序在while循环外就已经计算过一次m值,此时c=0,对应查找树的第一层;因此,当c=3时对应的是查找树的第四层,因此,key=24、27、30。本题选择B。
11. 有如下Python程序段:
k=1
for i in range(0,len(a)-1):
if k*a[i]>k*a[i+1]:
a[i],a[i+1]=a[i+1],a[i]
k=-k
若列表a有7个元素,运行该程序后a可能的值是( )
A. [7,8,5,9,6,9,7] B. [7,6,5,8,7,9,9]
C. [8,6,7,5,9,7,9] D. [7,8,6,5,7,9,9]
【答案】A
【解析】
【详解】本题考查本题考查循环结构的程序实现。通过for语句可知,i=0,1,2,3,4,5;k初值为1,因此,第一次循环结束时,a[0]<=a[1],k=-1;第二次循环结束时,a[1]>=a[2],k=1;第三次循环结束时,a[2]<=a[3],k=-1;第四次循环结束时,a[3]>=a[4],k=1;第五次循环结束时,a[4]<=a[5],k=-1;A选项正确,符合数值大小规律;B选项错误,a[0]为7,a[1]为6,不符合a[0]<=a[1]。C选项错误,a[0]为8,a[1]为6,不符合a[0]<=a[1]。D选项错误,a[2]为6,a[3]为5,不符合a[2]<=a[3]。因此,本题选择A。
12. 对非空链表进行反转操作。该链表存储在列表d中,如图所示,每个节点由数据区域和指针区域组成,h为头指针。实现上述功能的Python自定义函数如下,方框中应填入的正确代码为( )
def revlst(d,h):
p=d[h][1]
d[h][1]=-1
while p!=-1:
return d,h
A.
r=d[p][1]
d[p][1]=h
h=p
p=r
B.
r=d[p][1]
p=r
h=p
d[p][1]=h
C.
r=d[p][1]
d[p][1]=h
p=r
h=p
D.
p=d[p][1]
h=p
r=d[p][1]
p=r
A. A B. B C. C D. D
【答案】A
【解析】
【详解】本题考查链表。链表反转的基本思想是改变链表中节点的指针方向,使原来的后继节点变为前驱节点,原来的前驱节点变为后继节点。 对于给定的链表,通过while循环,依次将每个节点的指针指向前一个节点,直到最后一个节点。h是p的前驱节点,r是p的后继节点。因此,在循环中,需要执行d[p][1]=h,但是为了后续指针的正常修改,需要先保存好d[p][1],即r=d[p][1],最后更新h,p的值,继续遍历下一个节点。因此,本题选择A。
二、非选择题(本大题共3小题,其中第13小题7分,第14小题10分,第15小题9分,共26分)
13. 编写Python程序求生日幸运数。算法如下:遍历身份证号,提取其中最大连续非0数字(遇到0,当前连续结束;“X”作10处理)的和作为生日幸运数,如图中连续数字"21982"各位数字的和(2+1+9+8+2=22)最大,输出22作为生日幸运数。程序运行界面如图所示,请回答下列问题:
(1)运行程序,输入身份证号33040220060102123X,则输出的生日幸运数为_________。
(2)实现上述功能的Python程序如下,请在划线处填入合适的代码。
s=input('请输入您的身份证号:')
max=0;sum=0
for i in s:
if________:
if sum>max:
max=sum
________
else:
if i='x' or i='x':
sum+=10
else:
________
if sum>max:
max=sum
print('您的生日幸运数为:',max)
【答案】 ①. 18 ②. i="0"或i<"1"或int(i)==0 ③. sum=0 ④. sum+=int(i)
【解析】
【详解】本题考查算法综合应用。
①根据题意可知,最大连续非 0 数字串是 2123X, 2+1+2+3+10=18,因此该空为18。
②此处的 if 语句是用于判断当前连续数字是否结束,也就是遇到 0 的情况来中断当前连续数字的累加,所以应该填入 i == '0'或i<"1"或int(i)==0。
③当遇到 0 中断当前连续数字累加后,需要将 sum 重新初始化为 0,准备下一次连续数字的累加统计,所以填入 sum = 0。
④这里是在当前字符不是 0 也不是 X 的情况下,要将和当前字符相应的数字累加到 sum 中,因为从身份证号中读取的字符是字符串类型,需要转换为整数类型后再累加,所以填入 sum += int(i)。
14. 某电池智能充电实验系统由智能终端、传感器、执行器、服务器及相关充电装置等组成用户可通过浏览器或移动客户端访问该系统,完成控制充电、查看充电状态及结算充电费用等操作。
(1)在实验系统的搭建过程中,下列说法不正确的是__________(单选,填字母)。
A.智能终端仅负责传感器数据的采集
B.智能终端可通过IoT模块实现与服务器的数据通信
C.根据项目需求选购的硬件设备,需要进行硬件运行测试
(2)当用户使用手机向系统发出充电指令时,系统启动充电程序。该指令传输的路径是:手机→________→IoT模块→________→执行器,请在划线处填入正确答案。
(3)基于Flask Web框架编写的服务器端程序部分代码如下,查看充电状态的URL是http://220.189.110.100:5000/view。请在划线处填入合适的代码。
#导入相关模块,代码略
app=Flask(_name_)
@app.route("/______")
def view_data():
#返回充电状态数据,代码略
#服务器其他功能,代码略
if__name__=="_main_":
app.run(host="220.189.110.100")
(4)要对系统功能进行扩展,增加电池高温警示和火灾报警,请写出新增传感器的名称及其连接的设备。________
(5)对系统中某月数据进行分析并可视化,数据格式与柱形图如图a、b所示。请在划线处填入合适的代码。
#导入相关模块,代码略
defts(st,ed): #计算并返回充电时长,st为开始时间,ed为结束时间
#代码略
df=pd.read_excel("rech.xlsx")
for i in range(len(df)):
df.at[i,"充电时长"]=________
dfl=df
#设置绘制柱形图参数,代码略
plt.bar(df1.类型,df1.充电功率)
(6)方框中的代码用于计算各类型接口的平均功率,其中充电电量小于0.01度为无效数据。下列实现上述功能的方法中,正确的是_________(多选,填字母)。
①df1=df[充电电量>=0.01]
②df1=df[df.充电电量>=0.01]
③df1=df1.groupby("类型",as_index=False).mean()
④df1["充电功率"]=df1["充电电量"]/df1["充电时长"]*1000
A.①④③ B.②④③ C.④②③ D.④③②
【答案】 ①. A ②. 服务器 ③. 智能终端 ④. view ⑤. 设置温度传感器、红外传感器、火焰传感器、烟雾传感器等,连接在智能终端。 ⑥. ts(df.at[i,"开始时间"],df.at[i,"结束时间"])或者ts(df["开始时间"][i],df["结束时间"][i]) ⑦. B
【解析】
【详解】本题考查信息系统搭建。
①智能终端不仅负责传感器数据的采集,还需要与服务器进行数据通信。本空为A。
②当用户使用手机向系统发出充电指令时,指令先从手机传输到服务器。本空为服务器。
③服务器通过 IoT 模块将指令发送给智能终端,智能终端控制执行器。本空为智能终端。
④在 Flask 框架中,@app.route()装饰器用于定义 URL 路由,查看充电状态的 URL 是http://220.189.110.100:5000/view,所以在@app.route()括号内应填入/view,这样当用户访问该 URL 时,就会调用view_data()函数来返回充电状态数据。本空为view。
⑤要实现电池高温警示和火灾报警功能,需要增加对应的传感器来检测相应的状态,因此可以增加温度传感器、红外传感器、火焰传感器、烟雾传感器等来检测。增加的传感器连接在智能终端,将数据传输给智能终端。因此本空为设置温度传感器、红外传感器、火焰传感器、烟雾传感器等,连接在智能终端。
⑥在循环中,要计算每一行数据对应的充电时长,根据ts函数的定义(计算并返回充电时长,st为开始时间,ed为结束时间),应该调用ts函数并传入该行数据中的开始时间和结束时间作为参数,这样就能计算出每一次充电的时长并存储在“充电时长”列中。本空为ts(df.at[i,"开始时间"],df.at[i,"结束时间"])或者ts(df["开始时间"][i],df["结束时间"][i])。
⑦首先要筛选出充电电量大于等于 0.01 的数据,正确的写法是df1 = df[df.充电电量 >= 0.01],所以②正确,①错误;然后计算充电功率,根据公式充电功率 = 充电电量/充电时长×1000,df1["充电功率"] = df1["充电电量"]/df1["充电时长"]*1000,所以④正确;最后按“类型”分组求平均功率,df1 = df1.groupby("类型", as_index = False).mean(),所以③正确。按照正确的操作顺序,应该是②④③,答案选 B。
15. 编写Python程序进行考生考场座位分配。每个考场共30个座位,座位编排时按如图a所示的顺序依次安排。将考生数据从如图b所示的Excel文件中导入到列表lst,格式如[["陈熙",3,30302,107],["邹瑜",1,30132,7].....],每个元素包含考生姓名、班级、班级学号(年级+班级+班内学号)和序号共4个数据项,其中班级数≥6,班级人数介于[30,50]。
考生考场分配规则如下:
①按考场号从小到大、同一考场内按座位号从小到大安排考生座位;
②在所有班级中查找剩余未分配人数最多的班级(若存在并列情况,则选择查找到的第一个班级),然后从该班级可分配考生中选取序号最小的考生排入当前座位;
③当前座位与前方、左方相邻座位的考生不能来自同一班级。例如:在安排座位(8)时,若当前考生与前方座位(7)或左方座位(2)的考生来自同一班级,需参照规则②从其他班级中重新选取;
(1)仅对图b显示的7位考生进行考场分配。由题意可知,排在1号座位考生的班级学号是____________。
(2)定义bub_sort函数,对考生数据按照班级升序排序,班级相同按序号升序排序。依据题意,划线处正确的代码是______________(单选,填字母)。
def bub_sort(lst):
n=len(lst)
for i in range(n-1):
for j in range(n-1,i,-1):
if lst[j][1]<1st[j-1][1]or_____________:
lst[j],lst[j-1]=lst[j-1],lst[j]
A.lst[j][1]==lst[j-1][1] and lst[j][2]>lst[j-1][2]
B.lst[j][1]==lst[j-1][1] and lst[j][2]<lst[j-1][2]
Clst[j][1]==lst[j-1][1] and lst[j][3]>lst[j-1][3]
D.lst[j][1]==lst[j-1][1] and lst[j][3]<lst[j-1][3]
(3)定义create_queinf函数,对班级数据进行统计,结果保存在列表queinf中,queinf[0]用于保存班级数量,其余元素结构为[班级,起始位置,班级人数]。请在划线处填入合适的代码。
def create_queinf(lst):
queinf=[0] #初始化
n=len(lst)
head=0
for i in range(1,n):
if lst[i-1][1]!=lst[i][1]:
queinf.append([lst[i-1][1],head,i-head])
___________
queinf.append([lst[i][1],head,n-head])
queinf[0]=len(queinf)-1 #queinf[0]保存班级数量
return queinf
(4)定义check函数,根据分配规则③检测相邻座位考生是否同一班级。请在划线处填入合适的代码。
def check(RoomID,SeatID,ClassID):
if SeatID % 6!=0 and room[RoomID][SeatID-1]//100%100==ClassID:
return False
if____________ and room[RoomID][SeatID-6]//100%100==ClassID:
return False
return True
(5)实现安排座位功能的部分Python程序如下,程序运行结果如图c所示,请在程序中划线处填入合适的代码。
图c
def sel_sort(queinf): #按各班学生数降序排序
#代码略
def allocation(RoomID):
for i in range(30):
for j in range(1,queinf[0]+1):
if check(RoomID,i,queinf[j][0]):
m=j
break
room[RoomID][i]=________
queinf[m][1]+=1
________
if queinf[m][2]==0:
queinf[0]-=1
for i in range(m,len(queinf)-1):
if queinf[i][2]<queinf[i+1][2]:
queinf[i],queinf[i+1]=queinf[i+1],queinf[i]
else:
break
if queinf[1][2] == 0:
return
#主程序
#考生数据导入到列表lst,代码略
bub_sort(lst)
queinf=create_queinf(lst)
sel_sort(queinf)
total=(len(1st)-1)//30+1 #total存储需要的考场数量
room=[[""]*30 for j in range(total)] #初始化所有考场
for i in range(total):
allocation(i)
#按序输出所有考场信息,代码略
【答案】 ①. 31338 ②. D ③. head=i ④. SeatID>5或其他等价表达式,大小写均可 ⑤. lst[queinf[m][1]][2]或lst[queinf[j][1]][2] ⑥. queinf[m][2]-=1或queinf[j][2]-=1
【解析】
【详解】本题考查冒泡排序,二维数组。
①根据考场分配规则②,在所有班级中查找剩余未分配人数最多的班级,然后从该班级可分配考生中选取序号最小的考生排入当前座位。在给定的 7 位考生中,班级 1 有 1 人,班级 3 有 2 人,班级 4 有 1 人,班级 13 有 3 人。班级 13 人数最多,所以先从班级 13 中选择考生。班级 13 中序号最小的考生是向玉鑫,其班级学号为 31338。因此,本空为31338。
②在比较相邻考生数据时,首先比较班级,如果lst[i][1] < lst[j - 1][1],表示前一个考生的班级大于于后一个考生的班级,需要交换;如果lst[i][1] == lst[j - 1][1],表示班级相同,此时需要比较序号,若lst[i][3] < lst[j - 1][3],即前一个考生的序号大于后一个考生的序号,也需要交换;所以划线处应填入lst[i][1] == lst[j - 1][1] and lst[i][3] < lst[j - 1][3],选项 D 正确。
③由主程序可知,该处传入的lst是升序排序过的,因此,通过for循环遍历考生数据列表lst,统计不同班级的信息。当发现相邻两个考生的班级不同时(即lst[i - 1][1]!= lst[i][1]),表示一个班级的数据统计结束,此时将前一个班级的信息(班级编号、起始位置和班级人数)添加到queinf列表中。然后更新下一个班级的起始位置为当前位置i。因此,该空为head=i。
④由 allocation 函数中的第一个for循环可知,i的范围为0到29,即SeatID(座位号)为 0 到 29,因此,check函数中第一个if条件是判断当前座位不在每列的最上边且该位置与前方相邻座位的考生来自同一班级,因此第二个if条件是判断当前座位不在每行的最左边且该位置与左方相邻座位的考生来自同一班级,该空需要判断当前座位不在每行的最左边,即座位号需要大于5。因此,该空为SeatID>5或其他等价表达式。
⑤在座位分配过程中,当找到符合条件的班级和考生后,需要将考生的班级学号填入座位列表room中。由图c可知,room[RoomID][i]表示当前考场RoomID的第i个座位上考生的班级学号,而班级学号是lst中的索引为2的元素,通过if语句可知,当找到符合条件的考生时,该考生在lst中的位置为queinf[m][1](或者是queinf[j][1],即当前符合条件的班级的序号最小学生,即该班级的起始位置),因此该空为lst[queinf[m][1]][2]或lst[queinf[j][1]][2]。
⑥当找到符合条件的班级和考生后,将考生的班级学号填入座位列表room后,该班级对应的起始位置需要递增1(因为原位置的学生已经排好),同时,该班级的班级人数需要减少1,因此该空为queinf[m][2]-=1或queinf[j][2]-=1。
第1页/共1页
学科网(北京)股份有限公司
$$
嘉兴市高三模拟测试
技术试题卷
(2024-12)
本试题卷分信息技术和通用技术两部分。满分100分,考试时间90分钟。
第一部分信息技术(共50分)
一、单选题(本大题共12小题,每小题2分,共24分)
1. 某汽车智能驾驶系统,通过传感器实时捕捉各种道路与环境数据,并结合卫星地图和人工智能技术,实现智能驾驶,如自动变道、智能泊车等,系统中的数据在传输和存储时均进行了加密处理。下列关于该系统中数据与信息的描述,正确的是( )
A. 数据传输可以不依附载体
B. 传感器捕捉的图像属于结构化数据
C. 系统中的数据是以二进制形式存储的
D. 数据处理过程中不会产生新的有价值的信息
2. 某汽车智能驾驶系统,通过传感器实时捕捉各种道路与环境数据,并结合卫星地图和人工智能技术,实现智能驾驶,如自动变道、智能泊车等,系统中的数据在传输和存储时均进行了加密处理。下列有关该系统信息安全与社会责任的说法,正确的是( )
A. 用户的行车数据可公开用于研究和开发
B. 数据的加密传输和存储是为了提高数据的安全性
C. 系统中加密算法采用的加密密钥与解密密钥必须相同
D. 未经用户授权将行车中拍摄的面部数据用于改进用户体验
3. 某汽车智能驾驶系统,通过传感器实时捕捉各种道路与环境数据,并结合卫星地图和人工智能技术,实现智能驾驶,如自动变道、智能泊车等,系统中的数据在传输和存储时均进行了加密处理。下列有关人工智能技术在该系统中应用的说法,正确的是( )
A. 智能驾驶可以完全替代人类,实现自动驾驶
B. 自动上传行车视频到服务器是人工智能技术的应用
C. 智能驾驶功能的实现依赖于各种传感器获取的数据
D. 人工智能在智能驾驶系统中的应用仅限于深度学习领域
4. 某汽车智能驾驶系统,通过传感器实时捕捉各种道路与环境数据,并结合卫星地图和人工智能技术,实现智能驾驶,如自动变道、智能泊车等,系统中的数据在传输和存储时均进行了加密处理。下列关于该系统中数据处理的说法,不正确的是( )
A. 将高清视频进行实时压缩,可节省存储空间
B. 采集道路图像时,需将模拟信号进行数字化处理
C. 为优化传输效率,将MP3格式的音频转换成WAV格式
D. 该系统采用大数据处理技术,以满足对海量数据的实时处理
5. 某景区票务系统支持网络订票、自助售取票机、手持式售票检票机等进行售票,通过手持式售票检票机、检票闸机等设备进行检票;在网上可实时查询客流量、剩余票数等数据。检票闸机支持二维码、身份证等检票方式;检票成功后闸机门自动打开。下列关于该系统组成与功能的描述,正确的是( )
A. 系统中的服务器无需安装应用软件
B. 扫描二维码检票的过程中使用了射频识别技术
C. 仅通过网页查看景区客流量的人员不属于该系统的用户
D. 检票时闸机门能自动打开体现了传感与控制技术的应用
6. 某景区票务系统支持网络订票、自助售取票机、手持式售票检票机等进行售票,通过手持式售票检票机、检票闸机等设备进行检票;在网上可实时查询客流量、剩余票数等数据。检票闸机支持二维码、身份证等检票方式;检票成功后闸机门自动打开。下列关于该系统中网络技术的说法,正确的是( )
A. 该系统的网络属于局域网
B. 检票闸机与服务器间的数据传输需遵循网络协议
C. 使用手机查看客流量必须通过移动通信网络才能完成
D. 使用手持式售票检票机进行售票和检票无需服务器支持
7. 用户登录某系统时,若连续5次输入密码错误,账号将被锁定。验证部分的算法如图所示(正确密码已存储在变量key中)。某同学对虚线框中算法进行了完善,Python代码如下:
if c<5:
print('第',c,'次输入错误!')
pwd=input('请重新输入密码:')
else:
print(c,'次输入错误,账号已锁定!')
f=True
测试程序时发现缺少了计数代码c+=1,该代码应添加位置是( )
A. “else:”的上一行 B. “else:”的下一行
C. “if c<5:”的上一行 D. “if c<5:”的下一行
8. 某完全二叉树总节点数为10,用数字[1~10]逐层依次标示各个节点。下列关于该树的说法,不正确的是( )
A. 叶子节点数比度为2的节点数多1
B. 中序遍历的顺序为8-9-4-10-5-2-1-6-3-7
C. 若某节点无左孩子节点,则此节点亦无右孩子节点
D. 用一维数组存储该树,所有节点对应的数组元素一定是连续的
9. 一个栈的入栈序列为1,2,3,4,5,其出栈序列为s1,s2,s3,s4,s5。若s2是3,则s1不可能是( )
A. 1 B. 2 C. 4 D. 5
10. 某使用二分查找算法的Python程序段如下:
a=[21,22,23,24,25,26,27,28,29,30]
key=int(input("key="))
c=0
i,j=0,9
m=(i+j)//2
while i<=j and key!=a[m]:
if a[m] < key:
i=m+1
else:
j=m-1
m=(i+j)//2
c+=1
print(c)
若程序运行后,输出结果是3,则key的值可能是( )
A. 21或23 B. 24或27 C. 26或29 D. 23或30
11. 有如下Python程序段:
k=1
for i in range(0,len(a)-1):
if k*a[i]>k*a[i+1]:
a[i],a[i+1]=a[i+1],a[i]
k=-k
若列表a有7个元素,运行该程序后a可能值是( )
A. [7,8,5,9,6,9,7] B. [7,6,5,8,7,9,9]
C. [8,6,7,5,9,7,9] D. [7,8,6,5,7,9,9]
12. 对非空链表进行反转操作。该链表存储在列表d中,如图所示,每个节点由数据区域和指针区域组成,h为头指针。实现上述功能的Python自定义函数如下,方框中应填入的正确代码为( )
def revlst(d,h):
p=d[h][1]
d[h][1]=-1
while p!=-1:
return d,h
A.
r=d[p][1]
d[p][1]=h
h=p
p=r
B.
r=d[p][1]
p=r
h=p
d[p][1]=h
C.
r=d[p][1]
d[p][1]=h
p=r
h=p
D.
p=d[p][1]
h=p
r=d[p][1]
p=r
A. A B. B C. C D. D
二、非选择题(本大题共3小题,其中第13小题7分,第14小题10分,第15小题9分,共26分)
13. 编写Python程序求生日幸运数。算法如下:遍历身份证号,提取其中最大连续非0数字(遇到0,当前连续结束;“X”作10处理)的和作为生日幸运数,如图中连续数字"21982"各位数字的和(2+1+9+8+2=22)最大,输出22作为生日幸运数。程序运行界面如图所示,请回答下列问题:
(1)运行程序,输入身份证号33040220060102123X,则输出的生日幸运数为_________。
(2)实现上述功能的Python程序如下,请在划线处填入合适的代码。
s=input('请输入您的身份证号:')
max=0;sum=0
for i in s:
if________:
if sum>max:
max=sum
________
else:
if i='x' or i='x':
sum+=10
else:
________
if sum>max:
max=sum
print('您的生日幸运数为:',max)
14. 某电池智能充电实验系统由智能终端、传感器、执行器、服务器及相关充电装置等组成。用户可通过浏览器或移动客户端访问该系统,完成控制充电、查看充电状态及结算充电费用等操作。
(1)在实验系统的搭建过程中,下列说法不正确的是__________(单选,填字母)。
A.智能终端仅负责传感器数据的采集
B.智能终端可通过IoT模块实现与服务器的数据通信
C.根据项目需求选购的硬件设备,需要进行硬件运行测试
(2)当用户使用手机向系统发出充电指令时,系统启动充电程序。该指令传输的路径是:手机→________→IoT模块→________→执行器,请在划线处填入正确答案。
(3)基于Flask Web框架编写服务器端程序部分代码如下,查看充电状态的URL是http://220.189.110.100:5000/view。请在划线处填入合适的代码。
#导入相关模块,代码略
app=Flask(_name_)
@app.route("/______")
def view_data():
#返回充电状态数据,代码略
#服务器其他功能,代码略
if__name__=="_main_":
apprun(host="220.189.110.100")
(4)要对系统功能进行扩展,增加电池高温警示和火灾报警,请写出新增传感器的名称及其连接的设备。________
(5)对系统中某月数据进行分析并可视化,数据格式与柱形图如图a、b所示。请在划线处填入合适的代码。
#导入相关模块,代码略
defts(st,ed): #计算并返回充电时长,st为开始时间,ed为结束时间
#代码略
df=pd.read_excel("rech.xlsx")
for i in range(len(df)):
df.at[i,"充电时长"]=________
dfl=df
#设置绘制柱形图参数,代码略
plt.bar(df1.类型,df1.充电功率)
(6)方框中的代码用于计算各类型接口的平均功率,其中充电电量小于0.01度为无效数据。下列实现上述功能的方法中,正确的是_________(多选,填字母)。
①df1=df[充电电量>=0.01]
②df1=df[df.充电电量>=0.01]
③df1=df1.groupby("类型",as_index=False).mean()
④df1["充电功率"]=df1["充电电量"]/df1["充电时长"]*1000
A.①④③ B.②④③ C.④②③ D.④③②
15. 编写Python程序进行考生考场座位分配。每个考场共30个座位,座位编排时按如图a所示的顺序依次安排。将考生数据从如图b所示的Excel文件中导入到列表lst,格式如[["陈熙",3,30302,107],["邹瑜",1,30132,7].....],每个元素包含考生姓名、班级、班级学号(年级+班级+班内学号)和序号共4个数据项,其中班级数≥6,班级人数介于[30,50]。
考生考场分配规则如下:
①按考场号从小到大、同一考场内按座位号从小到大安排考生座位;
②在所有班级中查找剩余未分配人数最多的班级(若存在并列情况,则选择查找到的第一个班级),然后从该班级可分配考生中选取序号最小的考生排入当前座位;
③当前座位与前方、左方相邻座位的考生不能来自同一班级。例如:在安排座位(8)时,若当前考生与前方座位(7)或左方座位(2)的考生来自同一班级,需参照规则②从其他班级中重新选取;
(1)仅对图b显示的7位考生进行考场分配。由题意可知,排在1号座位考生的班级学号是____________。
(2)定义bub_sort函数,对考生数据按照班级升序排序,班级相同按序号升序排序。依据题意,划线处正确的代码是______________(单选,填字母)。
def bub_sort(lst):
n=len(lst)
for i in range(n-1):
for j in range(n-1,i,-1):
if lst[j][1]<1st[j-1][1]or_____________:
lst[j],lst[j-1]=lst[j-1],lst[j]
A.lst[j][1]==lst[j-1][1] and lst[j][2]>lst[j-1][2]
B.lst[j][1]==lst[j-1][1] and lst[j][2]<lst[j-1][2]
C.lst[j][1]==lst[j-1][1] and lst[j][3]>lst[j-1][3]
D.lst[j][1]==lst[j-1][1] and lst[j][3]<lst[j-1][3]
(3)定义create_queinf函数,对班级数据进行统计,结果保存在列表queinf中,queinf[0]用于保存班级数量,其余元素结构为[班级,起始位置,班级人数]。请在划线处填入合适的代码。
def create_queinf(lst):
queinf=[0] #初始化
n=len(lst)
head=0
for i in range(1,n):
if lst[i-1][1]!=lst[i][1]:
queinf.append([lst[i-1][1],head,i-head])
___________
queinfappend([lst[i][1],head,n-head])
queinf[0]=len(queinf)-1 #queinf[0]保存班级数量
return queinf
(4)定义check函数,根据分配规则③检测相邻座位的考生是否同一班级。请在划线处填入合适的代码。
def check(RoomID,SeatID,ClassID):
if SeatID % 6!=0 and room[RoomID][SeatID-1]//100%100==ClassID:
return False
if____________ and room[RoomID][SeatID-6]//100%100==ClassID:
return False
return True
(5)实现安排座位功能的部分Python程序如下,程序运行结果如图c所示,请在程序中划线处填入合适的代码。
图c
def sel_sort(queinf): #按各班学生数降序排序
#代码略
def allocation(RoomID):
for i in range(30):
for j in range(1,queinf[0]+1):
if check(RoomID,i,queinf[j][0]):
m=j
break
room[RoomID][i]=________
queinf[m][1]+=1
________
if queinf[m][2]==0:
queinf[0]-=1
for i in range(m,len(queinf)-1):
if queinf[i][2]<queinf[i+1][2]:
queinf[i],queinf[i+1]=queinf[i+1],queinf[i]
else:
break
if queinf[1][2] == 0:
return
#主程序
#考生数据导入到列表lst,代码略
bub_sort(lst)
queinf=create_queinf(lst)
sel_sort(queinf)
total=(len(1st)-1)//30+1 #total存储需要的考场数量
room=[[""]*30 for j in range(total)] #初始化所有考场
for i in range(total):
allocation(i)
#按序输出所有考场信息,代码略
第1页/共1页
学科网(北京)股份有限公司
$$