浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx

浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx

ID:83628976

大小:423.39 KB

页数:11页

时间:2024-09-03

上传者:老李
浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx_第1页
浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx_第2页
浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx_第3页
浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx_第4页
浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx_第5页
浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx_第6页
浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx_第7页
浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx_第8页
浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx_第9页
浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx_第10页
资源描述:

《浙江省宁波市九校2023-2024学年高二上学期1月期末高中信息技术 Word版含解析.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

宁波市2023学年高二第一学期期末九校联考技术试题考生须知:1.本试卷分两部分,第一部分信息技术,第二部分通用技术。全卷共12页,满分100分,考试时间90分钟。2.考生答题前,务必将自己的姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸上。3.选择题的答案用2B铅笔将答题纸上对应题目的答案选项涂黑。4.非选择题的答案用黑色字迹的签字笔或钢笔写在答题纸上相应区域内,作图时可先使用2B铅笔,确定后用黑色字迹的签字笔或钢笔描黑,答案写在非答题纸上无效。第一部分:信息技术(共50分)一、选择题(本大题共12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、错选、多选均不得分)1.下列关于数据、信息和知识的说法,不正确的是()A.文字是数据的一种表现形式B.信息超出有效期后不再具有任何价值C.三角形(已知三条边的长度)的面积可以根据海伦公式计算得到,这是知识的体现D.面对同样的信息,不同的人可能形成不同的知识【答案】B【解析】【详解】本题考查的是数据、信息和知识。信息超出有效期后不再具有任何价值,也由一定的价值,故选项B说法错误。2.下列关于数制和编码的说法,正确的是()A.末位为0的任意进制正整数,转换为十进制数后一定为偶数B.若字符“Y”的内码用十六进制表示为59,则“Z”的内码用十六进制表示为60C.英文字符在计算机内部使用ASCII码进行存储和处理D.用x位k进制数给y种不同的信息进行编码,必须满足y"18"or9>10B.{1:"a",2:"b"}[1]=="b"C.int("20"+"23")<48D.3in["3",[2,3]]【答案】A【解析】【详解】本题考查的是Python表达式。{1:"a",2:"b"}[1]="a"与"b"不相等,故返回值为False; int("20"+"23")=2023不小于48,故返回值为False;3in["3",[2,3]]返回值为False;"8">"18"or9>10返回值为True。故本题应选A。9.已知字符串s="python",现要将s中的第一个字符改为大写字母,以下操作方法可行的是()①s[0]="P"②s[0]=chr(ord(s[0])-ord("a")+ord("A"))③s="P"+s[1:]④s=s[0].upper()+s[1:]A.①②B.③④C.①②③D.①②③④【答案】B【解析】【详解】本题考查的是字符串操作。字符串是不可变对象,不能用下标赋值的方式去改变字符串,故①②方法不可行;upper()方法将字符串中的小写字母转为大写字母。故本题应选B。10.有如下python程序段,可以实现从班级学生中随机抽取五名学生参与班会活动。importrandom#random模块中的常用函数如上表所示#导入学生名单到列表a中,a=["张*","李*",…,"丁*"]namelist=[]#列表namelist存放随机生成的学生名单foriinrange(5):t=①②a.pop(t)上述程序段中划线处依次可填入的语句是()A.①random.randint(0,len(a))②namelist.append(a[t])B.①random.randint(0,len(a)-1)②namelist+=a[t]C.①random.choice(range(0,len(a)))②namelist+=[a[t]]D.①int(random.random()*len(a))②namelist+=a[t]【答案】C【解析】【详解】本题考查的是随机函数。random.randint(0,len(a))生成的整数包括len(a),超出了列表a的范围,选项A不可行;namelist+=a[t]是将a[t]中字符分离后加入列表,选项B、D不可行;故本题应选C。11.假如正整数x在n进位下的平方可以分割为两个正整数,且这两个数相加后恰等于x,那么x就是n进位下的卡布列克数。例如9²=81,而9=8+1,所以9是十进位下的卡布列克数,9也是十进位下最小的有意义的卡布列克数。编写如下自定义函数判定x是否为十进位下的卡布列克数。defKaprekarnumber(x): w=10;m=x*xelse:#与while语句对齐returnFalse关于上述程序代码,以下说法正确的是()A.执行语句print(Kaprekar_number(45)),输出结果FalseB.若将语句①while后面的m>w修改为m>=w,其他部分保持不变,不影响函数功能C.语句块②可用语句returnm//w+m%w==x代替D.交换语句块②和语句③的顺序,不影响函数功能【答案】B【解析】【详解】本题考查的是自定义函数。45*45=2025,20+25=45,故输出结果为:True,选项A说法错误;语句块②可用语句returnm//w+m%w==x代替,则只对未位分割成两个整数后进行判断后,直接返回,故选项C说法错误;交换语句块②和语句③的顺序,则缺少了对未位分割成两个整数的判断,故选项D说法错误;将语句①while后面的m>w修改为m>=w,其他部分保持不变,不影响函数功能,选项B说法正确,故本题应选B。12.有如下python程序段,执行该程序段后,输出结果不可能的是()importrandomasrdst=[1]*10;top=0foriinrange(5):num=rd.randint(1,6)ifnum>=st[top]:top+=1;st[top]=numelifnum%2==0:top-=1whiletop>=0:print(st[top],end="");top-=1A.633111B.1C.422D.6661【答案】C 【解析】【详解】本题考查的是栈的操作。num=rd.randint(1,6),num数字是1~6整数。只有生成的数字小于栈顶元素而且为偶数时才出栈,st中初始值都为1,故栈低元素肯定为1(因为生成的num一直不比1小)。故输出的结果最后一位肯定为1,选项C最后一位为2,不符合,故本题应选C。二、非选择题(本大题共3小题,其中第13小题7分,第14小题10分,第15小题9分,共26分)13.为了解学生每天参与早锻炼的情况,某中学在操场的出入口安装了智能门禁系统。学生每天早晨从寝室区入口刷脸进入操场,锻炼结束再从靠近教学楼一侧刷脸出操场,学校可根据每日刷脸记录了解学生的早锻炼情况。现将操场门禁系统刷脸数据导出存储在文件“刷脸记录.xlsx”中(部分数据如图a所示),并编写如下python程序,统计分析各班的早锻炼情况。图a图b(1)编写统计人数函数tjrs。根据刷脸记录,统计某年(y)某月(m)各班每日参加早锻炼的人数,生成数据如图b所示。(说明:生成日期函数scrq,根据年份月份,生成对应的日期列表,例2023年10月生成的日期列表为["2023-10-01","2023-10-02",……,"2023-10-31"],代码略。)deftjrs(data,y,m):datanew=pd.DataFrame()forxinscrq(y,m):data1=data[①____]#筛选出日期列的值为x的所有数据s=data1groupby("班级",asindex=False)②____s["日期"]=xs=s.rename(columns={"姓名":"人数"})s=s.drop("时间",axis=1)datanew=datanew.append(s)#将datanew按班级、日期进行排序,排序后重置索引,代码略returndatanew (2)编写生成相应班级(bj)某月(m)每日参与早锻炼情况折线图函数bjtb。defbjtb(data,bj,m):#从data中筛选出班级为bj的所有数据存入data_bj中,代码略foriindata_bj.index:#去掉日期列(格式如图a所示)的年份、月份data_bj["日期"][i]=plt.plot(databj["日期"],data_bj["人数"],label=bj)#设置图表标题、显示图例、显示图表,代码略上述程序划线处可以填入的代码为____(多选,填字母)A.data_bj["日期"][i][-2:]B.data_bj."日期"[i][8:]C.data_bj.at[i]["日期"][-2:]D.data_bj.at[i,"日期"][8:](3)主程序。读取“刷脸记录.xlsx”文件,根据输入的年份、月份统计某年某月各班每日参加早锻炼的人数,生成相应班级的图表。importpandasaspdimportmatplotlib.pyplotaspltdata=pd.read_excel("刷脸记录.xlsx")#依次输入年份(year)、月份(month)、班级(bj),代码略Data_tj=tjrs(data,year,month)#统计各班每日参与早锻炼的人数bjtb(data_tj,bj,month)#生成输入班级对应月份的图表,如图c所示经过上述程序处理,从得到的数据统计结果(如图b和图c所示)可以看出,高一(1)班10月4日和10月11日参与早锻炼人数与其它时间的参与人数有较大偏差,这属于常见的数据问题中的____(单选,填字母:A数据异常/B逻辑错误/C格式不致)。图c【答案】①.data["日期"]==x或data.日期]==x②.count()③.AD④.A【解析】【详解】本题考查的是利用pandas进行数据分析。(1)筛选出日期列的值为x的所有数据,故①处应为:data["日期"]==x或data.日期]==x;统计某年(y)某月(m)各班每日参加早锻炼的人数,故②处应为:count()。 (2)日期格式:如2023-10-01,取出年份、月份,故③处应为:data_bj["日期"][i][-2:]或data_bj.at[i,"日期"][8:]选项AD正确。(3)高一(1)班10月4日和10月11日参与早锻炼人数与其它时间参与人数有较大偏差,这属于常见的数据问题中的数据异常,故本题应选A。14.杨辉三角,是二项式系数在三角形中的一种几何排列,其最左侧一列数字和右边的斜边数字均为1,内部其他位置上的每个数字均为上一行同一列数字与上一行前一列数字之和,前8行的杨辉三角如第图a所示。图a杨辉三角图b三角形数垒(1)如果用数据结构中的队列构建杨辉三角,编写输出前n行杨辉三角的python程序代码如下,请在程序划线处填入合适的代码。n=int(input("输入行数:"))que=[0]*1000head=tail=0que[tail]=1print(que[tail]);tail=tail+1foriinrange(2,n+1):print(que[tail],end="");tail=tail+1forjinrange(①____):que[tail]=②____print(que[tail],end="");tail=tail+1head=head+1print(que[tail]);tail=tail+1③____(2)三角形数垒(如图b 所示),是杨辉三角的变形,与杨辉三角不同的是最左侧一列数字和右边的斜边数字均为1、2…n。若要使得程序能输出三角形数垒,可通过将第(1)小题程序中的两条加框语句que[tail]=1都修改为____实现。(3)在上述程序中,给队列que分配的最大空间为1000,存在空间浪费问题。为了提高空间利用效率,小北将队列que改为了循环队列,即将第2条语句que=[0]*1000修改为que=[0]*n,同时将程序中所有的head=head+1和tail=tail+1进行了修改,其中head=head+1应修改为____。【答案】①.i-2或1,i-1②.que[head]+que[head+1]③.head=head+1④.que[tail]=i⑤.head=(head+1)%n【解析】【详解】本题考查的是队列综合应用。(1)外循环控制杨辉三角的行数,内循环控制每行的元素个数(除头和尾),并计算每一个位置的值,故循环次数依次为:0、1、……n-2,故①处应为:i-2或1,i-1;head表示上一行第一列,内部其他位置上的每个数字均为上一行同一列数字与上一行前一列数字之和,故②处应为:que[head]+que[head+1];③处,内循环结束后head指向上一行的队尾,需要将它移动到这行的队头,为下一行计算内部其他位置上的数字,做准备,故此处应为:head=head+1。(2)加框语句que[tail]=1是控制最左侧一列数字和右边的斜边数字,三角形数垒最左侧一列数字和右边的斜边数字均为1、2…n,故此处应为:que[tail]=i。(3)que=[0]*1000修改为que=[0]*n,则需要将队列循环利用,将队列构成一个循环队列,故中head=head+1应修改为:head=(head+1)%n。15.某校举行校园乒乓球循环赛,有n(假设n=2**k)名学生报名参加比赛,要求:①每名选手都与其他n-1名选手比赛一次;②每人每天只能赛一次;③比赛共进行n-1天,要求每天没有选手轮空。以n=8(即k=3)为例,可以根据问题要求,制定出如图a所示的一种循环比赛表:图a从八名选手的循环比赛表中可以看出,这是一个具有对称性的方阵,可以把方阵一分为四来看:①左上角的4×4的方阵就是前四名选手的循环比赛表,而右上角的4×4 的方阵就是后四名选手的循环比赛表,它们在本质上是一样的,都是4名选手的循环比赛表,所不同的只是选手编号不同而已,将左上角方阵中的所有元素依次加上4就能得到右上角的方阵。②下方两个方阵同样具有对称性。右下角的方阵应与左上角的方阵相同,左下角的方阵应与右上角的方阵相同。可见,八名选手的循环比赛表可以由四名选手的循环比赛表根据对称性生成,四名选手的循环比赛表可以由两名选手的循环比赛表根据对称性生成。那么,具有n名选手的情况可依此类推。八名选手的对称性生成过程如图b所示。图b图c(1)在有n(假设n恰好等于2**k)名选手参赛的循环比赛表中,将左上角方阵中的所有元素依次加上_____________(用k表示)就能得到右上角的方阵。(2)实现上述功能的部分python程序代码如下,请在划线处填入合适的代码。#导入参赛选手名单,并将名单存入列表nlist中,nlist=["张*","李*",…],代码略importmathn=len(nlist)#假设参赛人数n恰好为2的k次方defcreate_table(n):a=[[1foriinrange(n)]forjinrange(n)]k=0;half=1whilek

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
大家都在看
近期热门
关闭