资源简介 浙江省余姚中学2024-2025学年高二上学期期中考试技术(选考)试题-高中信息技术一、选择题(本大题共12小题,每小题2分,共24分,每小题列出的四个备选项中只有一个是符合题目要求的,不选、错选、多选均不得分)1.(2024高二上·余姚期中)下列关于数据、大数据、信息和知识的说法,正确的是( )A.数据处理过程中,不会有新的数据产生B.信息在交流的过程中会产生损耗C.大数据处理的数据一定是非结构化的D.相比于数据和信息,知识更接近行动,它与决策相关【答案】D【知识点】信息及其特征;数据、信息、知识与智慧的关系;大数据思维2.(2024高二上·余姚期中)以下关于数据编码的说法正确的是( )A.一个基本的ASCII码用一个字符中的低7位编码B.计算机中的数据以二进制或十六进制存储C.位深度为8的图像可表达1024种颜色D.某段声音存储为Wave格式,其存储容量是唯一的【答案】A【知识点】字符编码;声音、图像、视频编码3.(2024高二上·余姚期中)下列关于人工智能的说法,正确的是( )A.人工智能就是机器学习B.符号主义是从“交互一反馈”角度来刻画智能行为C.深度学习在图像分类、语音识别等领域表现出良好的性能D.AlphaGo从围棋跨界到电力控制领域,属于混合增强智能【答案】C【知识点】人工智能的发展与现状4.(2024高二上·余姚期中)用数组表示一棵二叉树:0 1 2 3 4 5 6 7 8 9 10 11'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'i'下列说法正确的是( )A.这是一棵完全二叉树B.这棵树的叶子节点比度为1的节点多1个C.节点‘g’,‘h’是兄弟节点D.使用前序遍历和中序遍历方式查找字母‘e’,则访问节点个数相同【答案】D【知识点】基本数据结构5.(2024高二上·余姚期中)假设完全二叉树的树根为第1 层,树中第10 层有5 个叶子节点,则完全二叉树最多有多少个节点?( )A.2047 B.2048 C.2037 D.2038【答案】C【知识点】基本数据结构6.(2024高二上·余姚期中)变量a,b均为布尔型,下列Python表达式与not a or b等价的是( )A.not(a or b) B.not(a and b)C.a !=True or b!=False D.a==False and b==False【答案】C【知识点】运算符、基本运算与表达式7.(2024高二上·余姚期中)某 Python 代码段如下,x = 142; y = 125; z = 120res = 0if x > y:res = xelif y> z:res = res + zres = res - 5print (res)执行该程序段后输出的结果是( )A.115 B.137 C.140 D.157【答案】B【知识点】分支结构语句及程序实现8.(2024高二上·余姚期中)有如下Python程序段:s="Hello World"; s2=""for i in s:if "A"<=i<="Z":i=chr(ord(i)+ord("a")-ord("A"))if "a"<=i<="z":s2=chr((ord(i)-ord("a")+3)%26+ord("a"))+s2else:s2=i+s2print(s2)执行该程序段后,输出的结果为( )A.gour rooh B.gourz roohk C.khoor zruog D.hoor ruog【答案】B【知识点】常见数据类型、数组;循环结构语句及程序实现9.(2024高二上·余姚期中)某递归函数如下所示:def hs(m):if m<=1:f=1else:f=hs(m-1)+hs(m-2)return fans=0for i in range(5):if hs(i)%2==1:ans+=1print(ans)程序运行后,输出的结果是( )A.2 B.10 C.4 D.5【答案】C【知识点】递归算法10.(2024高二上·余姚期中)某二分查找算法用于查找非降序序列arr中小于等于key的最后一个元素位置,python代码如下:arr=[1,1,4,4,4,5,5,5]key=int(input())L=0; R=len(arr)-1while (1) :mid=(L+R+1)//2if (2) :L=mid+1else:R=mid-1print((3) )划线(1)(2)(3)处可供选择的语句有:①L < R ②L<=R ③arr[mid] < key ④arr[mid]<=key ⑤L ⑥R则正确的代码应为( )A.①③⑤ B.①④⑥ C.②③⑤ D.②④⑥【答案】D【知识点】查找算法及程序实现11.(2024高二上·余姚期中)有如下程序段:# 随机生成 5 个正整数并存入列表 s 中,代码略def sort_indices(s) :n=len(s)y=[i for i in range(n)] # 生成序列 0 ~ n-1for i in range(n-1) :for j in range(n-i-1):if s[y[j]]>=s[y [j+1]] :y [j],y [j+1]=y [j+1],y[j]return y执行上述程序后,若返回的结果为[2,1,0,4,3],下列选项中,列表 s 中各元素值可能的是( )A.[3,2,1,5,4] B.[4,2,1,5,3] C.[5,2,1,3,4] D.[3,2,5,1,4]【答案】A【知识点】排序算法及程序实现12.(2024高二上·余姚期中)有如下Python程序段s="01357987"; k=3; stack=[s[0]]for char in s[1:]:while stack[-1] > char and k > 0:stack.pop() #删除 stack 列表的最后一个元素k-=1stack.append( char) #在 stack 列表的结尾插入元素 charwhile k > 0:stack.pop()k-=1while stack[0] == "0":stack.pop(0)print( stack)执行该程序段后,stack的值是( )A.['1','3','5','7'] B.['7','9','8','7']C.['0','7','9','8','7'] D.['0,'1','3','5','7']【答案】A【知识点】基本数据结构二、非选择题(本大题共3小题,其中第13小题7分,第14小题9分,第15小题10分,共26分)13.(2024高二上·余姚期中)有一个猜数字的魔术,魔术师让观众心中默想一个小于50的两位数,接着问该观众,在如图1所示的6张卡片中哪几张有他想的数。最后,魔术师总能准确地猜出这个数。图1 图2小温学习了信息编码相关知识后,很快发现了该魔术的奥秘。他发现卡片1中所有的数字转成二进制后最低位都是1,卡片2的所有数字转成二进制后倒数第二位(从最低位开始数第二位)的数字都是1,卡片3的所有数字转成二进制后倒数第三位(从最低位开始数第三位)的数字都是1……以此类推。现编写程序,验证小温的想法,运行结果如图2所示,程序代码如下,请回答下列问题。def judge(a, i):#参数a代表需要验证卡片的数据列表,参数i代表卡片编号flag=False; ans=0for j in a:k=j//2**(i-1)ans+=① if ans==len(a):② return flag#生成6张卡片中值,并存储在a中a=[[1,3,5……47,49],[2,3,6……50],……]for i in range(6):#依次验证卡片1到卡片6if ③ :print('卡片'+str(i+1)+'验证成功')(1)请在横线处填入合适的代码。(2)小温的父亲的年龄在50岁以下,其年龄仅在卡片1、卡片3、卡片4、卡片6出现过,则小温父亲的年龄为 (填数字)岁。【答案】k%2;flag=True;judge(a[i],i+1);45【知识点】运算符、基本运算与表达式;常用标准函数14.(2024高二上·余姚期中)已知某校高一年级第一、二学期期中、期末考试4次成绩存储在“exam. xlsx”中,如图1所示。教务管理员对历次考试中七门选考科目考试成绩(赋分)进行处理,本着分数优先原则,将平均分最高的两门科目作为备选科目,为高一学生选课提供参考.图1(1)若某生考试缺考则该科目分数标记为0,已知总分列是所有考试科目分数总和,请对数据进行整理,剔除缺考考生数据,划线处能实现该功能的语句是 import pandas as pddf=pd. read_ excel("exam. xlsx")df=(2)计算每个同学的历次考试的平均成绩gf=若gf对象输出后图2所示,请为划线处选择合适的代码 (单选,填字母)A.df. groupby('姓名', as_ index=False). mean() B.df. groupby('姓名', as_ index=True). mean()C.df. groupby('姓名'). mean() D.df. groupby('班级', as_ index=False). mean()图2(3)计算每个同学的两门优势学科,请在划线①②③处完善代码。km=gf. columns[4:11]#获取七门选考科目学科名称gf. insert(12,"优势学科","")#在总分列后插入新的一列,列标题名为“优势学科”初始值为""for i in gf.① :subjectl=subject2=""max1=max2=0for j in range(0,len(km)):② if cj>max1:③ subject1=km[j]max2=max1max1=cjelif cj>max2:subject2=km[j]max2=cjgf. at[i,"优势学科"]=subject1+subject2【答案】df [df. 总分>0];A;index;cj=gf. at[i, km[j]];subject2=subject1【知识点】循环结构语句及程序实现15.(2024高二上·余姚期中)某工厂有两个生产车间,现要为两个车间生产的产品进行分组,以便后续进行检测。分组前先将每个车间每天生产的产品排在一起:先是第一车间第一天生产的产品,再是第二车间第一天生产的产品;接着是第一车间第二天和第二车间第二天生产的产品……。这些产品用正整数1,2,3,…进行编号。其中,第一车间产品用0表示,第二车间产品用1表示。连续排在一起的同一车间的产品可以视为一个“块”。假设,有初始产品序列如下表:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 200 0 0 0 1 1 1 0 0 0 1 1 0 1 1 0 1 1 1 1如编号1,2,3,4为第一车间第一天生产的产品块,5,6,7为第二车间第一天生产的产品块,依次类推。分组时,取每一块最左边的第一个产品组成一组,直至所有产品抽取完。注意,当取完一个车间的产品后,其左右两块同一车间的产品会合并成一个块。例如第一组抽取的产品是(序号):1,5,8,11,13,14,16,17,剩余产品是:2 3 46 79 10121518 19 200 0 01 10 0111 1 1此时,剩余最左边编号是12,15,18的三块会合成同一块,那么第二组抽取的产品只有4个,分别是(序号):2,6,9,12。而后第三组抽取的产品是:3,7,10,15。第四组抽取的产品是4,18。第五组抽取的产品是19。第六组抽取的产品是20。所有产品抽完后,分组结束。以下程序完成并输出了原始产品序列的分组情况,请回答以下问题:(1)若产品序列是“001100010011”,则第二组抽取的产品序号是 (用正整数按递增的顺序作答)。(2)主程序对原始产品序列进行处理,输出了每次分组的结果。对于题述产品序列,其输出的分组结果如下图所示,请将程序补充完整。# 采集原始产品序列,如“001100010011”,并保存至变量 s 中,代码略s = s + "." # 在产品序列串末尾放置一个点号,表示结束符sel = [False] * len(s)q, k, begin = [], 0, 0for i in range(1, len(s)):if (① ):q.append([begin, i-1, s[i-1]]) # 为 q 追加一个元素begin = ii = 0cnt = len(s) – 1while cnt > 0:print("第" + str(i+1) + "组:", end="")q2 = selection(q, 0, len(q))i += 1;print("")q = mergence(q2, 0, len(q2))(3)selection 函数实现了产品的抽取,请将程序补充完整。def selection(q, head, tail):global cnt # 定义 cnt 为全局变量,即与主程序 cnt 变量通用q2 = []while head < tail:F = q[head]head += 1while ② :F[0] += 1print(F[0] + 1, end=" ")cnt -= 1sel[F[0]] = Trueif F[0] == F[1]:continue③ q2.append(F)return q2(4)mergence 函数实现了产品抽取后剩余产品的调整,请将程序补充完整。def mergence(q2, head2, tail2):q = []while head2 < tail2:X = q2[head2]head2 += 1while head2 < tail2:Y = q2[head2]if X[2] == Y[2]:④ head2 += 1else:breakq.append(X)return q【答案】2 4 6 12 或 2,4,6,12;s[i] != s[i-1];sel[F[0]] 或sel[F[0]] == True;F[0] += 1 或q[head-1][0] + 1;X[1] = Y[1]【知识点】基本数据结构1 / 1浙江省余姚中学2024-2025学年高二上学期期中考试技术(选考)试题-高中信息技术一、选择题(本大题共12小题,每小题2分,共24分,每小题列出的四个备选项中只有一个是符合题目要求的,不选、错选、多选均不得分)1.(2024高二上·余姚期中)下列关于数据、大数据、信息和知识的说法,正确的是( )A.数据处理过程中,不会有新的数据产生B.信息在交流的过程中会产生损耗C.大数据处理的数据一定是非结构化的D.相比于数据和信息,知识更接近行动,它与决策相关2.(2024高二上·余姚期中)以下关于数据编码的说法正确的是( )A.一个基本的ASCII码用一个字符中的低7位编码B.计算机中的数据以二进制或十六进制存储C.位深度为8的图像可表达1024种颜色D.某段声音存储为Wave格式,其存储容量是唯一的3.(2024高二上·余姚期中)下列关于人工智能的说法,正确的是( )A.人工智能就是机器学习B.符号主义是从“交互一反馈”角度来刻画智能行为C.深度学习在图像分类、语音识别等领域表现出良好的性能D.AlphaGo从围棋跨界到电力控制领域,属于混合增强智能4.(2024高二上·余姚期中)用数组表示一棵二叉树:0 1 2 3 4 5 6 7 8 9 10 11'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'i'下列说法正确的是( )A.这是一棵完全二叉树B.这棵树的叶子节点比度为1的节点多1个C.节点‘g’,‘h’是兄弟节点D.使用前序遍历和中序遍历方式查找字母‘e’,则访问节点个数相同5.(2024高二上·余姚期中)假设完全二叉树的树根为第1 层,树中第10 层有5 个叶子节点,则完全二叉树最多有多少个节点?( )A.2047 B.2048 C.2037 D.20386.(2024高二上·余姚期中)变量a,b均为布尔型,下列Python表达式与not a or b等价的是( )A.not(a or b) B.not(a and b)C.a !=True or b!=False D.a==False and b==False7.(2024高二上·余姚期中)某 Python 代码段如下,x = 142; y = 125; z = 120res = 0if x > y:res = xelif y> z:res = res + zres = res - 5print (res)执行该程序段后输出的结果是( )A.115 B.137 C.140 D.1578.(2024高二上·余姚期中)有如下Python程序段:s="Hello World"; s2=""for i in s:if "A"<=i<="Z":i=chr(ord(i)+ord("a")-ord("A"))if "a"<=i<="z":s2=chr((ord(i)-ord("a")+3)%26+ord("a"))+s2else:s2=i+s2print(s2)执行该程序段后,输出的结果为( )A.gour rooh B.gourz roohk C.khoor zruog D.hoor ruog9.(2024高二上·余姚期中)某递归函数如下所示:def hs(m):if m<=1:f=1else:f=hs(m-1)+hs(m-2)return fans=0for i in range(5):if hs(i)%2==1:ans+=1print(ans)程序运行后,输出的结果是( )A.2 B.10 C.4 D.510.(2024高二上·余姚期中)某二分查找算法用于查找非降序序列arr中小于等于key的最后一个元素位置,python代码如下:arr=[1,1,4,4,4,5,5,5]key=int(input())L=0; R=len(arr)-1while (1) :mid=(L+R+1)//2if (2) :L=mid+1else:R=mid-1print((3) )划线(1)(2)(3)处可供选择的语句有:①L < R ②L<=R ③arr[mid] < key ④arr[mid]<=key ⑤L ⑥R则正确的代码应为( )A.①③⑤ B.①④⑥ C.②③⑤ D.②④⑥11.(2024高二上·余姚期中)有如下程序段:# 随机生成 5 个正整数并存入列表 s 中,代码略def sort_indices(s) :n=len(s)y=[i for i in range(n)] # 生成序列 0 ~ n-1for i in range(n-1) :for j in range(n-i-1):if s[y[j]]>=s[y [j+1]] :y [j],y [j+1]=y [j+1],y[j]return y执行上述程序后,若返回的结果为[2,1,0,4,3],下列选项中,列表 s 中各元素值可能的是( )A.[3,2,1,5,4] B.[4,2,1,5,3] C.[5,2,1,3,4] D.[3,2,5,1,4]12.(2024高二上·余姚期中)有如下Python程序段s="01357987"; k=3; stack=[s[0]]for char in s[1:]:while stack[-1] > char and k > 0:stack.pop() #删除 stack 列表的最后一个元素k-=1stack.append( char) #在 stack 列表的结尾插入元素 charwhile k > 0:stack.pop()k-=1while stack[0] == "0":stack.pop(0)print( stack)执行该程序段后,stack的值是( )A.['1','3','5','7'] B.['7','9','8','7']C.['0','7','9','8','7'] D.['0,'1','3','5','7']二、非选择题(本大题共3小题,其中第13小题7分,第14小题9分,第15小题10分,共26分)13.(2024高二上·余姚期中)有一个猜数字的魔术,魔术师让观众心中默想一个小于50的两位数,接着问该观众,在如图1所示的6张卡片中哪几张有他想的数。最后,魔术师总能准确地猜出这个数。图1 图2小温学习了信息编码相关知识后,很快发现了该魔术的奥秘。他发现卡片1中所有的数字转成二进制后最低位都是1,卡片2的所有数字转成二进制后倒数第二位(从最低位开始数第二位)的数字都是1,卡片3的所有数字转成二进制后倒数第三位(从最低位开始数第三位)的数字都是1……以此类推。现编写程序,验证小温的想法,运行结果如图2所示,程序代码如下,请回答下列问题。def judge(a, i):#参数a代表需要验证卡片的数据列表,参数i代表卡片编号flag=False; ans=0for j in a:k=j//2**(i-1)ans+=① if ans==len(a):② return flag#生成6张卡片中值,并存储在a中a=[[1,3,5……47,49],[2,3,6……50],……]for i in range(6):#依次验证卡片1到卡片6if ③ :print('卡片'+str(i+1)+'验证成功')(1)请在横线处填入合适的代码。(2)小温的父亲的年龄在50岁以下,其年龄仅在卡片1、卡片3、卡片4、卡片6出现过,则小温父亲的年龄为 (填数字)岁。14.(2024高二上·余姚期中)已知某校高一年级第一、二学期期中、期末考试4次成绩存储在“exam. xlsx”中,如图1所示。教务管理员对历次考试中七门选考科目考试成绩(赋分)进行处理,本着分数优先原则,将平均分最高的两门科目作为备选科目,为高一学生选课提供参考.图1(1)若某生考试缺考则该科目分数标记为0,已知总分列是所有考试科目分数总和,请对数据进行整理,剔除缺考考生数据,划线处能实现该功能的语句是 import pandas as pddf=pd. read_ excel("exam. xlsx")df=(2)计算每个同学的历次考试的平均成绩gf=若gf对象输出后图2所示,请为划线处选择合适的代码 (单选,填字母)A.df. groupby('姓名', as_ index=False). mean() B.df. groupby('姓名', as_ index=True). mean()C.df. groupby('姓名'). mean() D.df. groupby('班级', as_ index=False). mean()图2(3)计算每个同学的两门优势学科,请在划线①②③处完善代码。km=gf. columns[4:11]#获取七门选考科目学科名称gf. insert(12,"优势学科","")#在总分列后插入新的一列,列标题名为“优势学科”初始值为""for i in gf.① :subjectl=subject2=""max1=max2=0for j in range(0,len(km)):② if cj>max1:③ subject1=km[j]max2=max1max1=cjelif cj>max2:subject2=km[j]max2=cjgf. at[i,"优势学科"]=subject1+subject215.(2024高二上·余姚期中)某工厂有两个生产车间,现要为两个车间生产的产品进行分组,以便后续进行检测。分组前先将每个车间每天生产的产品排在一起:先是第一车间第一天生产的产品,再是第二车间第一天生产的产品;接着是第一车间第二天和第二车间第二天生产的产品……。这些产品用正整数1,2,3,…进行编号。其中,第一车间产品用0表示,第二车间产品用1表示。连续排在一起的同一车间的产品可以视为一个“块”。假设,有初始产品序列如下表:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 200 0 0 0 1 1 1 0 0 0 1 1 0 1 1 0 1 1 1 1如编号1,2,3,4为第一车间第一天生产的产品块,5,6,7为第二车间第一天生产的产品块,依次类推。分组时,取每一块最左边的第一个产品组成一组,直至所有产品抽取完。注意,当取完一个车间的产品后,其左右两块同一车间的产品会合并成一个块。例如第一组抽取的产品是(序号):1,5,8,11,13,14,16,17,剩余产品是:2 3 46 79 10121518 19 200 0 01 10 0111 1 1此时,剩余最左边编号是12,15,18的三块会合成同一块,那么第二组抽取的产品只有4个,分别是(序号):2,6,9,12。而后第三组抽取的产品是:3,7,10,15。第四组抽取的产品是4,18。第五组抽取的产品是19。第六组抽取的产品是20。所有产品抽完后,分组结束。以下程序完成并输出了原始产品序列的分组情况,请回答以下问题:(1)若产品序列是“001100010011”,则第二组抽取的产品序号是 (用正整数按递增的顺序作答)。(2)主程序对原始产品序列进行处理,输出了每次分组的结果。对于题述产品序列,其输出的分组结果如下图所示,请将程序补充完整。# 采集原始产品序列,如“001100010011”,并保存至变量 s 中,代码略s = s + "." # 在产品序列串末尾放置一个点号,表示结束符sel = [False] * len(s)q, k, begin = [], 0, 0for i in range(1, len(s)):if (① ):q.append([begin, i-1, s[i-1]]) # 为 q 追加一个元素begin = ii = 0cnt = len(s) – 1while cnt > 0:print("第" + str(i+1) + "组:", end="")q2 = selection(q, 0, len(q))i += 1;print("")q = mergence(q2, 0, len(q2))(3)selection 函数实现了产品的抽取,请将程序补充完整。def selection(q, head, tail):global cnt # 定义 cnt 为全局变量,即与主程序 cnt 变量通用q2 = []while head < tail:F = q[head]head += 1while ② :F[0] += 1print(F[0] + 1, end=" ")cnt -= 1sel[F[0]] = Trueif F[0] == F[1]:continue③ q2.append(F)return q2(4)mergence 函数实现了产品抽取后剩余产品的调整,请将程序补充完整。def mergence(q2, head2, tail2):q = []while head2 < tail2:X = q2[head2]head2 += 1while head2 < tail2:Y = q2[head2]if X[2] == Y[2]:④ head2 += 1else:breakq.append(X)return q答案解析部分1.【答案】D【知识点】信息及其特征;数据、信息、知识与智慧的关系;大数据思维2.【答案】A【知识点】字符编码;声音、图像、视频编码3.【答案】C【知识点】人工智能的发展与现状4.【答案】D【知识点】基本数据结构5.【答案】C【知识点】基本数据结构6.【答案】C【知识点】运算符、基本运算与表达式7.【答案】B【知识点】分支结构语句及程序实现8.【答案】B【知识点】常见数据类型、数组;循环结构语句及程序实现9.【答案】C【知识点】递归算法10.【答案】D【知识点】查找算法及程序实现11.【答案】A【知识点】排序算法及程序实现12.【答案】A【知识点】基本数据结构13.【答案】k%2;flag=True;judge(a[i],i+1);45【知识点】运算符、基本运算与表达式;常用标准函数14.【答案】df [df. 总分>0];A;index;cj=gf. at[i, km[j]];subject2=subject1【知识点】循环结构语句及程序实现15.【答案】2 4 6 12 或 2,4,6,12;s[i] != s[i-1];sel[F[0]] 或sel[F[0]] == True;F[0] += 1 或q[head-1][0] + 1;X[1] = Y[1]【知识点】基本数据结构1 / 1 展开更多...... 收起↑ 资源列表 浙江省余姚中学2024-2025学年高二上学期期中考试技术(选考)试题-高中信息技术(学生版).docx 浙江省余姚中学2024-2025学年高二上学期期中考试技术(选考)试题-高中信息技术(教师版).docx