内容正文:
2025学年第二学期丽水发展共同体期中联考
高二年级技术学科 试题
考生须知:
1.本卷共11页满分100分,考试时间90分钟。
2.答题前,在答题卷指定区域填写班级、姓名、考场号、座位号及准考证号并填涂相应数字。
3.所有答案必须写在答题纸上,写在试卷上无效。
4.考试结束后,只需上交答题纸。
第一部分 信息技术(50分)
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
阅读下列材料,完成下面小题:
某中学引入了“智慧体测”系统。学生在体测站完成项目(如立定跳远、引体向上),系统通过高清摄像头捕捉动作,并利用姿态识别技术自动分析动作标准度、计数并自动记录成绩。所有成绩数据实时上传至云端服务器,经系统分析后,为每位学生生成个性化的体质健康报告与运动建议。学生和家长可通过手机APP查看报告和历史数据趋势。
1. 下列关于该系统中数据与信息的叙述,正确的是( )
A. 学生的体质健康报告只能以表格的形式呈现
B. 系统将学生甲的成绩错误记录为学生乙的成绩,这个错误没有任何价值
C. 摄像头需要捕捉的动作是模拟信号,无需数字化即可被计算机处理
D. 系统根据历史成绩预测学生运动潜力,这一过程可以获得新的信息
2. 该系统姿态识别技术是基于神经网络方法实现的,下列说法不正确的是( )
A. 训练该姿态识别模型时,需要提供大量学生体测动作数据
B. 进行姿态识别时,系统仍需依赖原始训练数据
C. 优化神经网络的模型结构或参数,有助于提高姿态识别的准确率
D. 该姿态识别技术识别结果并不总是完全准确
3. 在该系统中,高清摄像头拍摄的某张学生体测动作照片为1280×720像素、256色、BMP图像格式。下列关于该图像的说法不正确的是( )
A. 其他参数不变,仅将图像转换成8位灰度模式并保存,不会改变存储容量
B. 为了提升传输速率,可以将图像保存为JPEG格式
C. 系统拍摄照片经过放大以后会失真
D. 为了提高照片的清晰度,可以将该照片设置为640×360像素
4. 关于该系统中数据编码的描述,正确的是( )
A. 该系统采集到的所有数据在计算机中都是以二进制存储的
B. 学生姓名等中文字符可用ASCII码进行编码存储
C. 原始数据在传输前无需进行任何编码
D. 数据编码的唯一目的是减少数据存储量,与准确性无关
5. 下列关于该系统数据处理与存储的描述,正确的是( )
A. 数组比链表更便于数据的插入或删除
B. 只能使用队列来存储学生体测数据
C. 学生体测成绩数据可以用数组来存储
D. 可以直接用二分查找快速找出某项目成绩最好的前10名学生
6. 下列关于该系统中数据的说法,正确的是( )
A. 该系统中有结构化数据
B. 该系统中存储的数据是大数据
C. 该系统中已经采集并存储的数据是流数据
D. 该系统预测的学生运动潜力一定是准确的
【答案】1. D 2. B 3. D 4. A 5. C 6. A
【解析】
【1题详解】
本题考查数据与信息的概念。A选项错误,体质健康报告可以用表格、图表、文字等多种形式呈现。B选项错误,错误记录的数据仍具有数据价值,可用于纠错和系统优化。C选项错误,摄像头捕捉的模拟信号必须经过数字化才能被计算机处理。D选项正确,根据历史数据预测运动潜力,属于加工产生新信息的过程。因此,本题选择D选项。
【2题详解】
本题考查神经网络与姿态识别原理。A选项正确,神经网络模型训练需要大量标注的体测动作数据作为样本。B选项错误,模型训练完成后,识别时只需使用模型参数,无需原始训练数据。C选项正确,优化模型结构和参数能够提升识别的准确率。D选项正确,AI姿态识别存在误差,结果并非绝对准确。因此,本题选择B选项。
【3题详解】
本题考查图像数字化与存储。A选项正确,256色与8位灰度均为8位颜色深度,存储容量相同。B选项正确,JPEG为有损压缩格式,可减小文件大小提升传输速度。C选项正确,位图放大后会出现锯齿、马赛克等失真现象。D选项错误,640×360像素分辨率更低,会降低照片清晰度。因此,本题选择D选项。
【4题详解】
本题考查计算机数据编码基础。A选项正确,计算机中所有数据均以二进制形式存储和处理。B选项错误,ASCII码无法表示汉字,汉字需使用GBK、UTF-8等编码。C选项错误,原始数据传输前通常需要进行编码、封装处理。D选项错误,数据编码目的包括存储、传输、校验等,并非只为减少存储量。因此,本题选择A选项。
【5题详解】
本题考查数据结构与算法应用。A选项错误,链表更便于插入和删除操作,数组在这方面效率较低。B选项错误,学生体测数据可使用多种数据结构存储,并非只能用队列。C选项正确,体测成绩数据规整,适合用数组进行存储。D选项错误,二分查找仅用于查找特定值,不能直接找出前10名最高成绩。因此,本题选择C选项。
【6题详解】
本题考查数据类型与特征。A选项正确,学生体测成绩、个人信息等属于结构化数据。B选项错误,单一中学的体测数据规模未达到大数据的量级标准。C选项错误,已存储的体测数据属于静态数据,而非实时流数据。D选项错误,系统预测的运动潜力基于模型分析,并非一定准确。因此,本题选择A选项。
7. 某算法的部分流程图如图所示,输入下列数据,输出值与其它三项不同的是( )
A. 8 B. 18 C. 60 D. 105
【答案】C
【解析】
【详解】本题考查流程图。 输入x=8:n初始0,y=2。8>1且8%2=0→x=4,n=1;4>1且4%2=0→x=2,n=2;2>1且2%2=0→x=1,n=3,输出3。 输入x=18:n初始0,y=2。18>1且18%2=0→x=9,n=1;9%2≠0→y=3;9%3=0→x=3,n=2;3%3=0→x=1,n=3,输出3。 输入x=60:n初始0,y=2。60%2=0→x=30,n=1;30%2=0→x=15,n=2;15%2≠0→y=3;15%3=0→x=5,n=3;5%3≠0→y=4;5%4≠0→y=5;5%5=0→x=1,n=4,输出4。 输入x=105:n初始0,y=2。105%2≠0→y=3;105%3=0→x=35,n=1;35%3≠0→y=4;35%4≠0→y=5;35%5=0→x=7,n=2;7%5≠0→y=6;7%6≠0→y=7;7%7=0→x=1,n=3,输出3。 综上,输出与其它三项不同的是60。因此,本题选择C。
8. 队列Q从队首到队尾的元素依次为3,5,4,10,2,1。重复执行如下操作,直至队列剩余一个元素:队首元素h出队,若队尾元素t小于h,则将t+h的值入队,否则不入队。队列中最后剩余的元素是( )
A. 1 B. 4 C. 14 D. 19
【答案】D
【解析】
【详解】本题考查队列模拟操作。初始队列[3,5,4,10,2,1](队首到队尾)。第一轮:h=3出队,队尾t=1,t < h(1 < 3),入队t+h=4,队列[5,4,10,2,1,4];第二轮:h=5出队,队尾t=4,t < h(4 < 5),入队9,队列[4,10,2,1,4,9];第三轮:h=4出队,队尾t=9,t > = h(9 > = 4),不入队,队列[10,2,1,4,9];第四轮:h=10出队,队尾t=9,t < h(9 < 10),入队19,队列[2,1,4,9,19];第五轮:h=2出队,队尾t=19,t > = h(19 > = 2),不入队,队列[1,4,9,19];第六轮:h=1出队,队尾t=19,t > = h,不入队,队列[4,9,19];第七轮:h=4出队,队尾t=19,t > = h,不入队,队列[9,19];第八轮:h=9出队,队尾t=19,t > = h,不入队,队列[19]。剩余19。因此,本题选择D选项。
9. 某深度为3且只有3个叶子节点的完全二叉树,从根节点起,按从上到下、同层从左到右的顺序用字母依次标记每个节点,则该树的中序遍历结果可能是( )
A. DBHAFCG B. DBEAC C. DEBAC D. DEBAFGC
【答案】B
【解析】
【详解】本题考查二叉树的中序遍历与完全二叉树的性质。深度为3且只有3个叶子节点的完全二叉树,节点数只能为5或6。当节点数为5时,结构为根节点A,左子树B有左右孩子D和E,右子树C为叶子,中序遍历结果为D、B、E、A、C,即DBEAC。当节点数为6时,中序遍历结果为D、B、E、A、F、C,即DBEAFC,不在选项中。选项B符合节点数为5的遍历结果。因此,本题选择B选项。
10. 有如下python程序段:
a=[2,5,7,9,11];b=[3,6,8,10,12]
i=j=0
c=[]
while i < len(a) and j < len(b):
if a[i] <= b[j]:
c. append(a[i])
i+=1
else:
c. append(b[j])
j+=1
c+= a[i:];c+= b[j:]
执行该段程序段后,c[5]的值为( )
A. 8 B. 9 C. 10 D. 11
【答案】A
【解析】
【详解】本题考查有序数组合并。a=[2,5,7,9,11],b=[3,6,8,10,12],初始i=j=0,c=[]。循环两两比较:2≤3,c=[2],i=1;5≤3?否,c=[2,3],j=1;5≤6,c=[2,3,5],i=2;7≤6?否,c=[2,3,5,6],j=2;7≤8,c=[2,3,5,6,7],i=3;9≤8?否,c=[2,3,5,6,7,8],j=3。此时j=3,i=3,循环条件i<5且j<5仍成立,继续:9≤10,c=[2,3,5,6,7,8,9],i=4;11≤10?否,c=[2,3,5,6,7,8,9,10],j=4;11≤12,c=[2,3,5,6,7,8,9,10,11],i=5。此时i=5循环结束,执行c+=a[5:](空)和c+=b[4:](b[4]=12),最终c=[2,3,5,6,7,8,9,10,11,12]。索引从0开始,c[5]对应第6个元素值为8。因此,本题选择A选项。
11. 有如下python程序段:
def f(s):
if s == "":
return 0
elif s[0] in "aeiou":
return 1+f(s[1:])
else:
return f(s[1:])
result= f(" studyroom")
执行该程序段后,result的值为( )
A. 1 B. 2 C. 3 D. 4
【答案】C
【解析】
【详解】本题考查Python递归函数、字符串切片以及元音字母判断的相关知识,重点分析递归函数的执行过程和计数规则。该函数的作用是统计传入字符串中元音字母a、e、i、o、u的个数,函数执行时先判断字符串是否为空,为空则返回0作为递归结束条件,若字符串首字符是元音字母,则返回1加上剩余子串的递归结果,若不是元音字母则直接递归处理剩余子串。调用函数时传入字符串"studyroom",逐个字符判断其中的元音字母,依次识别出字母u、o、o这三个元音字符,每次识别到元音都会让计数加1,非元音字符则直接跳过继续递归,最终统计得到元音字母总数为3。因此本题选择C选项。
12. 有如下python程序段:
a=[2,4,7,10,11,12,14]
cnt=0
ch= int(input())
for key in a:
i,j=0, len(a)-1
while key%2 == 0 and i <= j:
m=(i+j)//2
if a[m] == ch:
cnt+=1
break
elif a[m] == key:
break
elif a[m] < key:
i=m+1
else:
j=m-1
若输入ch的值为4,执行该程序段后,变量cnt的值为( )
A. 0 B. 2 C. 3 D. 6
【答案】B
【解析】
【详解】本题考查二分查找与循环条件综合。a=[2,4,7,10,11,12,14],输入ch=4。外层遍历key:key=2(偶数,二分查找ch=4,因a[m]与ch比较,未命中且不等于key,最后找到4时cnt+1),key=4(偶数,二分查找ch=4,a[m]等于ch,cnt+1),key=7(奇数,while条件不满足,不执行内层),key=10(偶数,二分查找ch=4,但a[m]均大于等于10,最终j< i结束,未增加cnt),key=11(奇数,跳过),key=12(偶数,查找4,a[m]均≥10,未增加),key=14(偶数,查找4,未增加)。所以cnt增加两次:key=2和key=4时。因此cnt=2。故本题选择B选项。
二、非选择题(本大题共3小题,其中第13小题8分,第14小题8分,第15小题10分,共26分)
13. 某文创街区举办非遗手作展,为提升游客观展体验,主办方将不同类别的非遗手工艺品穿插陈列,让游客走最短路线,体验到尽可能多的非遗品类。编写程序,输入非遗品类的陈列序列(用小写字母标识不同品类),输出最长连续不重复品类序列的区间;若有多段长度相同,则输出最前一段。如某段展区手工艺品摆放序列为"abcabe",则最长连续不重复品种序列的区间为[2,5]。请回答下列问题:
(1)若某段展区手工艺品摆放序列为"abccba",最长连续不重复品种序列的区间为____。
(2)实现上述功能的部分python程序如下,请在划线处填入合适的代码。
s= input()
index=[-1]*26 #保存字符最后出现的位置
mx=i= start=0
n= len(s)
for j in range(n):
c=s[j]
①____
if index[t] >= i:
i= ②____
index[t]=j
③____
if length > mx:
mx= length
start=i
print("最长连续不重复品种序列的区间为:[", start,",", start+ mx-1,"])
【答案】(1)[0,2]
(2) ①. t = ord(c) - ord('a')或 t = ord(c)-97 ②. index[t]+1 ③. length=j-i+1或length=index[t]-i+1
【解析】
【详解】本题考查滑动窗口(双指针)算法,用于在字符串中寻找最长无重复字符子串的区间。当存在多个最长子串时,取最靠前的一个。核心思路:使用右指针j遍历字符串,用数组index记录每个字符最近一次出现的位置;当遇到重复字符且其上次出现位置在当前窗口左端i的右侧时,将i移到重复字符上次出现位置的下一位;每次更新窗口长度并记录最长窗口的起始位置。
(1)若陈列序列为“abccba”,最长连续不重复品种序列的区间为[0,2]。
(2)①处需要将字符c转换为数组下标0~25,用于访问index数组,该空答案为t = ord(c) - ord('a')或 t = ord(c)-97。②处当字符c上次出现位置index[t]大于等于窗口左边界i时,说明当前窗口内已存在该字符,需将i移到重复字符上次出现位置的下一位,以维持窗口内无重复,该空答案为index[t] + 1。③处当前窗口为[i, j],长度为j - i + 1,计算后与最大值比较并更新起始位置,该空答案为length = j - i + 1或length=index[t]-i+1。
14. 某中学的“智慧体测”系统运行一个学期后,从服务器数据库导出了本学期的体测成绩数据保存在data.csv文件中,其中等级判定由成绩按一定规则计算得出。
(1)按规定,每个班级每个项目的“优秀”人数不得超过5人,智慧体测数据保存在DataFrame对象df中(同项目所有成绩均无重复),如图a所示。现要编写Python程序,检查各班在“立定跳远”项目上的“优秀”记录是否符合规定,下列方法中正确的是 (单选,填字母)。
A. 从df中筛选出项目为“立定跳远”且等级为“优秀”的数据,再按“班级”分组计数,看是否有某组的计数结果超过5
B. 从df中筛选出等级为“优秀”的数据,再按“班级”排序,检查是否存在连续5行以上的班级名称相同
C. 从df中筛选出项目为“立定跳远”且等级为“优秀”的数据,检查是否存在连续5行以上班级名称相同
(2)现要找出“立定跳远”项目平均分最高的1个班级,并绘制各班该项目平均分柱形图,如图b所示。实现上述功能的部分Python程序如下,请选择合适的代码填入划线处。
import pandas as pd
import matplotlib. pyplot as plt
df= pd. read_csv(" data. csv", encoding=" gbk") #导入 data. csv文件
①____
②____
③____
df1=df1. sort_values("成绩", ascending= False)
④____
plt. show()
print("立定跳远平均分最高的班级是:",di)
A.plt.bar(df1.班级,df1.成绩)
B.df1=df[df["项目"]= ="立定跳远"]
C.di=df1.at[0,"班级"]
D.df1=df1.groupby("班级",as_index=False).mean()
(3)在计算“立定跳远”项目各班的平均分之前,程序需要先对原始成绩进行预处理,自动忽略超出合理范围的成绩。已知立定跳远成绩的合理范围是[mi,ma]。若某条立定跳远成绩s超出此范围,则在后续计算中不予考虑,以下程序段能实现该功能的是____(多选,填字母)。
A.
if s> ma and s< mi:
s=0
B.
if s> ma or s< mi:
s=0
C.
if s> ma:
s=0
if s< mi:
s=0
D.
temp=s
if not(s> ma or s< mi):
s=0
else:
s= temp
【答案】(1)A (2) ①. B ②. D ③. A ④. C
(3)BC
【解析】
【详解】本题考查Pandas数据处理与条件筛选,通过分组聚合、条件判断及绘图操作实现体测数据合规性检查与统计分析。
(1)检查各班“立定跳远”项目“优秀”人数是否超过5人,需先筛选出项目为“立定跳远”且等级为“优秀”的数据,再按班级分组计数,判断是否有某组计数大于5,因此正确选项为A。
(2)①处需筛选出项目为“立定跳远”的数据,因此应选B。②处需计算各班平均分,因此应选D。③处需绘制柱状图,横坐标为班级,纵坐标为平均成绩,因此应选A。④处需获取平均分最高的班级,由于已按成绩降序排序,第一行即为最高分班级,因此应选C。
(3)忽略超出合理范围[mi, ma]的成绩,即若成绩s大于ma或小于mi,则将其设为0(不予考虑)。B选项使用or连接两个条件,符合逻辑;C选项分两次判断,同样能实现相同效果。A选项条件为s > ma且s < mi,不可能同时成立,因此错误;D选项条件取反,将合理范围内的成绩设为0,不合理成绩保留,逻辑相反,因此错误。正确选项为BC。
15. 某生鲜平台将配送订单按新鲜度保障等级划分为特急、加急、常规、普通四级,对应每个等级配送服务费为80元、60元、40元、30元。每日有n单生鲜订单分批次进入配送中心,每单均标注订单号(唯一)、批次、配送服务费。配送员按以下流程开展配送作业:从配送中心当前所有待配送订单中,优先选取保鲜等级最高的一单完成配送,每配送完一单,立即有新的一批生鲜订单入仓,配送员再从剩余待配送订单与刚入仓的新批次订单中,选取保鲜等级最高的一单进行配送,依此规则循环执行。根据要求编写程序计算某配送员某天前m件订单的服务费总额。请回答问题:
订单号
批次
配送服务费
订单号
批次
配送服务费
订单号
批次
配送服务费
01001
1
60
03001
3
80
05001
5
60
01002
1
40
04001
4
30
05002
5
40
02001
2
30
04002
4
30
06001
6
30
02002
2
30
04003
4
80
06002
6
80
(1)现有订单如图所示,前4件订单的服务费总额是260元,若将订单号02002的服务费用改成60,订单号03001的服务费用改成30,则前4件订单的服务费是____元。
定义如下sort1(lst)函数,参数lst的每个元素由订单号、批次、配送服务费三项构成。请完成下面小题:
#函数功能是将 lst中的元素按配送件批次升序排列
def sort1(lst):
n= len(lst)
i=0
while i < n-1:
last=n-1
for j in range(n-1,i,-1):
if lst[j][1] < lst[j-1][1]:
last=j
(2)为实现上述功能,程序划线处语句不正确的是 (单选,填字母)。
A. i=i+1 B. i=j C. i=last D. i=j+1
(3)已知列表lst=[["03001",3,200],["05001",5,100],["02001",2,100],["02002",2,80],["01001",1,100]],调用上述函数,在整个排序过程中,加框处代码一共执行了____次。
(4)上述计算配送服务费总额的部分python程序如下,请在划线处填入合适的代码。
def imitate(lst, m):
for i in lst:
i. append(-1)
n= len(lst)
j=1
head=0
①____
for i in range(1,m+1):
while ②____:
pre=p= head
while p != -1 and lst[j][2] < lst[p][2]:
pre=p
p= lst[p][3]
if p == head:
lst[j][3]= head
head=j
else:
lst[pre][3]=j
lst[j][3]=p
j+=1
val+= lst[head][2]
③____
return val
'''
读取订单数据,存入列表lst中。列表的每个元素包含3个数据项,分别是订单号、批次、配送服务费。读取配送件数,存入m,代码略
'''
sortl(lst)
val= imitate(lst,m)
【答案】(1)240 (2)D
(3)8 (4) ①. val=0 ②. j < n and lst[j][1] == i或j < n and lst[j][1] <= i ③. head=lst[head][3]或head=lst[head][-1]
【解析】
【小问1详解】
本题考查配送规则的理解与模拟流程计算。根据配送规则,第一步初始只有批次1的两个订单,优先选最高服务费60元的01001作为第一单,总额60元,配送完成后加入批次2,改后02002服务费为60元,当前待配送订单中最高为60元的02002,作为第二单,总额累计120元,配送完成后加入批次3,改后03001服务费为30元,当前待配送订单最高为40元的01002,作为第三单,总额累计160元,配送完成后加入批次4,批次4包含服务费80元的04003,当前待配送最高为80元,作为第四单,总额为160+80=240元。故答案为:240。
【小问2详解】
本题考查冒泡排序算法的理解。该代码是优化冒泡排序,last记录最后一次交换的位置j,说明last及之前的区间需要排序,下一趟排序只需要遍历到last即可。选项A i=i+1是普通未优化冒泡的写法,虽然效率低,但功能正确;选项B i=j和选项C i=last等价(last最终等于最后一次交换的j),是正确的优化写法;选项D i=j+1会跳过j位置,导致j及之前的无序区间未排序,功能错误。故答案为:D。
【小问3详解】
本题考查冒泡排序执行过程的跟踪分析。原批次序列为[3,5,2,2,1],模拟排序过程:i=0,交换4次,序列变为[1,3,5,2,2];i=1,交换2次,序列变为[1,2,3,5,2];i=2,交换2次,序列变为[1,2,2,3,5];i=3,无交换,结束,总交换次数为4+2+2=8次。故答案为:8。
【小问4详解】
本题考查链表存储有序集合、算法逻辑补全。①处需要初始化服务费总和,因此填写val=0;②处循环的功能是将所有批次不大于当前配送次数的待入仓订单插入降序链表,因此循环条件为j < n and lst[j][1] <= i;③处取出当前最高服务费的订单累加后,需要更新链表头为原表头的下一个节点,因此填写head = lst[head][3]。
第1页/共1页
学科网(北京)股份有限公司
$
2025学年第二学期丽水发展共同体期中联考
高二年级技术学科 试题
考生须知:
1.本卷共11页满分100分,考试时间90分钟。
2.答题前,在答题卷指定区域填写班级、姓名、考场号、座位号及准考证号并填涂相应数字。
3.所有答案必须写在答题纸上,写在试卷上无效。
4.考试结束后,只需上交答题纸。
第一部分 信息技术(50分)
一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
阅读下列材料,完成下面小题:
某中学引入了“智慧体测”系统。学生在体测站完成项目(如立定跳远、引体向上),系统通过高清摄像头捕捉动作,并利用姿态识别技术自动分析动作标准度、计数并自动记录成绩。所有成绩数据实时上传至云端服务器,经系统分析后,为每位学生生成个性化的体质健康报告与运动建议。学生和家长可通过手机APP查看报告和历史数据趋势。
1. 下列关于该系统中数据与信息的叙述,正确的是( )
A. 学生的体质健康报告只能以表格的形式呈现
B. 系统将学生甲的成绩错误记录为学生乙的成绩,这个错误没有任何价值
C. 摄像头需要捕捉的动作是模拟信号,无需数字化即可被计算机处理
D. 系统根据历史成绩预测学生运动潜力,这一过程可以获得新的信息
2. 该系统姿态识别技术是基于神经网络方法实现的,下列说法不正确的是( )
A. 训练该姿态识别模型时,需要提供大量学生体测动作数据
B. 进行姿态识别时,系统仍需依赖原始训练数据
C. 优化神经网络的模型结构或参数,有助于提高姿态识别的准确率
D. 该姿态识别技术识别结果并不总是完全准确
3. 在该系统中,高清摄像头拍摄的某张学生体测动作照片为1280×720像素、256色、BMP图像格式。下列关于该图像的说法不正确的是( )
A. 其他参数不变,仅将图像转换成8位灰度模式并保存,不会改变存储容量
B. 为了提升传输速率,可以将图像保存为JPEG格式
C. 系统拍摄照片经过放大以后会失真
D. 为了提高照片的清晰度,可以将该照片设置为640×360像素
4. 关于该系统中数据编码的描述,正确的是( )
A. 该系统采集到的所有数据在计算机中都是以二进制存储的
B. 学生姓名等中文字符可用ASCII码进行编码存储
C. 原始数据在传输前无需进行任何编码
D. 数据编码的唯一目的是减少数据存储量,与准确性无关
5. 下列关于该系统数据处理与存储的描述,正确的是( )
A. 数组比链表更便于数据的插入或删除
B. 只能使用队列来存储学生体测数据
C. 学生体测成绩数据可以用数组来存储
D. 可以直接用二分查找快速找出某项目成绩最好的前10名学生
6. 下列关于该系统中数据的说法,正确的是( )
A. 该系统中有结构化数据
B. 该系统中存储的数据是大数据
C. 该系统中已经采集并存储的数据是流数据
D. 该系统预测的学生运动潜力一定是准确的
7. 某算法的部分流程图如图所示,输入下列数据,输出值与其它三项不同的是( )
A. 8 B. 18 C. 60 D. 105
8. 队列Q从队首到队尾的元素依次为3,5,4,10,2,1。重复执行如下操作,直至队列剩余一个元素:队首元素h出队,若队尾元素t小于h,则将t+h的值入队,否则不入队。队列中最后剩余的元素是( )
A. 1 B. 4 C. 14 D. 19
9. 某深度为3且只有3个叶子节点的完全二叉树,从根节点起,按从上到下、同层从左到右的顺序用字母依次标记每个节点,则该树的中序遍历结果可能是( )
A. DBHAFCG B. DBEAC C. DEBAC D. DEBAFGC
10. 有如下python程序段:
a=[2,5,7,9,11];b=[3,6,8,10,12]
i=j=0
c=[]
while i < len(a) and j < len(b):
if a[i] <= b[j]:
c. append(a[i])
i+=1
else:
c. append(b[j])
j+=1
c+= a[i:];c+= b[j:]
执行该段程序段后,c[5]的值为( )
A. 8 B. 9 C. 10 D. 11
11. 有如下python程序段:
def f(s):
if s == "":
return 0
elif s[0] in "aeiou":
return 1+f(s[1:])
else:
return f(s[1:])
result= f(" studyroom")
执行该程序段后,result的值为( )
A. 1 B. 2 C. 3 D. 4
12. 有如下python程序段:
a=[2,4,7,10,11,12,14]
cnt=0
ch= int(input())
for key in a:
i,j=0, len(a)-1
while key%2 == 0 and i <= j:
m=(i+j)//2
if a[m] == ch:
cnt+=1
break
elif a[m] == key:
break
elif a[m] < key:
i=m+1
else:
j=m-1
若输入ch的值为4,执行该程序段后,变量cnt的值为( )
A. 0 B. 2 C. 3 D. 6
二、非选择题(本大题共3小题,其中第13小题8分,第14小题8分,第15小题10分,共26分)
13. 某文创街区举办非遗手作展,为提升游客观展体验,主办方将不同类别的非遗手工艺品穿插陈列,让游客走最短路线,体验到尽可能多的非遗品类。编写程序,输入非遗品类的陈列序列(用小写字母标识不同品类),输出最长连续不重复品类序列的区间;若有多段长度相同,则输出最前一段。如某段展区手工艺品摆放序列为"abcabe",则最长连续不重复品种序列的区间为[2,5]。请回答下列问题:
(1)若某段展区手工艺品摆放序列为"abccba",最长连续不重复品种序列的区间为____。
(2)实现上述功能的部分python程序如下,请在划线处填入合适的代码。
s= input()
index=[-1]*26 #保存字符最后出现的位置
mx=i= start=0
n= len(s)
for j in range(n):
c=s[j]
①____
if index[t] >= i:
i= ②____
index[t]=j
③____
if length > mx:
mx= length
start=i
print("最长连续不重复品种序列的区间为:[", start,",", start+ mx-1,"])
14. 某中学的“智慧体测”系统运行一个学期后,从服务器数据库导出了本学期的体测成绩数据保存在data.csv文件中,其中等级判定由成绩按一定规则计算得出。
(1)按规定,每个班级每个项目的“优秀”人数不得超过5人,智慧体测数据保存在DataFrame对象df中(同项目所有成绩均无重复),如图a所示。现要编写Python程序,检查各班在“立定跳远”项目上的“优秀”记录是否符合规定,下列方法中正确的是 (单选,填字母)。
A. 从df中筛选出项目为“立定跳远”且等级为“优秀”的数据,再按“班级”分组计数,看是否有某组的计数结果超过5
B. 从df中筛选出等级为“优秀”的数据,再按“班级”排序,检查是否存在连续5行以上的班级名称相同
C. 从df中筛选出项目为“立定跳远”且等级为“优秀”的数据,检查是否存在连续5行以上班级名称相同
(2)现要找出“立定跳远”项目平均分最高的1个班级,并绘制各班该项目平均分柱形图,如图b所示。实现上述功能的部分Python程序如下,请选择合适的代码填入划线处。
import pandas as pd
import matplotlib. pyplot as plt
df= pd. read_csv(" data. csv", encoding=" gbk") #导入 data. csv文件
①____
②____
③____
df1=df1. sort_values("成绩", ascending= False)
④____
plt. show()
print("立定跳远平均分最高的班级是:",di)
A.plt.bar(df1.班级,df1.成绩)
B.df1=df[df["项目"]= ="立定跳远"]
C.di=df1.at[0,"班级"]
D.df1=df1.groupby("班级",as_index=False).mean()
(3)在计算“立定跳远”项目各班的平均分之前,程序需要先对原始成绩进行预处理,自动忽略超出合理范围的成绩。已知立定跳远成绩的合理范围是[mi,ma]。若某条立定跳远成绩s超出此范围,则在后续计算中不予考虑,以下程序段能实现该功能的是____(多选,填字母)。
A.
if s> ma and s< mi:
s=0
B.
if s> ma or s< mi:
s=0
C.
if s> ma:
s=0
if s< mi:
s=0
D.
temp=s
if not(s> ma or s< mi):
s=0
else:
s= temp
15. 某生鲜平台将配送订单按新鲜度保障等级划分为特急、加急、常规、普通四级,对应每个等级配送服务费为80元、60元、40元、30元。每日有n单生鲜订单分批次进入配送中心,每单均标注订单号(唯一)、批次、配送服务费。配送员按以下流程开展配送作业:从配送中心当前所有待配送订单中,优先选取保鲜等级最高的一单完成配送,每配送完一单,立即有新的一批生鲜订单入仓,配送员再从剩余待配送订单与刚入仓的新批次订单中,选取保鲜等级最高的一单进行配送,依此规则循环执行。根据要求编写程序计算某配送员某天前m件订单的服务费总额。请回答问题:
订单号
批次
配送服务费
订单号
批次
配送服务费
订单号
批次
配送服务费
01001
1
60
03001
3
80
05001
5
60
01002
1
40
04001
4
30
05002
5
40
02001
2
30
04002
4
30
06001
6
30
02002
2
30
04003
4
80
06002
6
80
(1)现有订单如图所示,前4件订单的服务费总额是260元,若将订单号02002的服务费用改成60,订单号03001的服务费用改成30,则前4件订单的服务费是____元。
定义如下sort1(lst)函数,参数lst的每个元素由订单号、批次、配送服务费三项构成。请完成下面小题:
#函数功能是将 lst中的元素按配送件批次升序排列
def sort1(lst):
n= len(lst)
i=0
while i < n-1:
last=n-1
for j in range(n-1,i,-1):
if lst[j][1] < lst[j-1][1]:
last=j
(2)为实现上述功能,程序划线处语句不正确的是 (单选,填字母)。
A. i=i+1 B. i=j C. i=last D. i=j+1
(3)已知列表lst=[["03001",3,200],["05001",5,100],["02001",2,100],["02002",2,80],["01001",1,100]],调用上述函数,在整个排序过程中,加框处代码一共执行了____次。
(4)上述计算配送服务费总额的部分python程序如下,请在划线处填入合适的代码。
def imitate(lst, m):
for i in lst:
i. append(-1)
n= len(lst)
j=1
head=0
①____
for i in range(1,m+1):
while ②____:
pre=p= head
while p != -1 and lst[j][2] < lst[p][2]:
pre=p
p= lst[p][3]
if p == head:
lst[j][3]= head
head=j
else:
lst[pre][3]=j
lst[j][3]=p
j+=1
val+= lst[head][2]
③____
return val
'''
读取订单数据,存入列表lst中。列表的每个元素包含3个数据项,分别是订单号、批次、配送服务费。读取配送件数,存入m,代码略
'''
sortl(lst)
val= imitate(lst,m)
第1页/共1页
学科网(北京)股份有限公司
$