资源简介 浙江省卓越联盟2024-2025学年高一下学期5月月考信息技术一、选择题1.高德地图提供高质量的地图显示,地图数据涵盖全国区域,不仅显示具体位置的详细信息,还推出自定义路线、停车导航等功能。如搜索杭州博物馆显示:位于杭州市上城区,评分4.8分,国家一级博物馆,周一、周三至周日9:00—16:30,同时提供景区电话。下列关于数据和信息的说法,正确的是( )A.材料中的文字是信息B.网约车司机无需导航能够到达博物馆,这是智慧的体现C.五一道路拥堵,导航更新到达时间,说明信息具有时效性D.用户的导航数据都是结构化数据2.高德地图提供高质量的地图显示,地图数据涵盖全国区域,不仅显示具体位置的详细信息,还推出自定义路线、停车导航等功能。如搜索杭州博物馆显示:位于杭州市上城区,评分4.8分,国家一级博物馆,周一、周三至周日9:00—16:30,同时提供景区电话。下列关于地图数据安全与保护的做法,合理的是( )A.高德地图可以随意发布用户行程信息B.可以采用主动防护的手段,保证数据的安全C.对用户的个人信息进行加密,可以保证数据的完整性D.为所有的授权用户设置相同的密码3.高德地图提供高质量的地图显示,地图数据涵盖全国区域,不仅显示具体位置的详细信息,还推出自定义路线、停车导航等功能。如搜索杭州博物馆显示:位于杭州市上城区,评分4.8分,国家一级博物馆,周一、周三至周日9:00—16:30,同时提供景区电话。下列关于高德地图的大数据说法,不正确的是( )A.导航规划最优行驶路线是大数据的典型应用B.数据产生的速度快,处理的速度也快C.获取的每个数据必须要准确无误D.因其数据量庞大,所以价值密度相对较低4.高德地图提供高质量的地图显示,地图数据涵盖全国区域,不仅显示具体位置的详细信息,还推出自定义路线、停车导航等功能。如搜索杭州博物馆显示:位于杭州市上城区,评分4.8分,国家一级博物馆,周一、周三至周日9:00—16:30,同时提供景区电话。地图显示浙江有21所国家一级博物馆,现每个博物馆安装了一台人脸识别设备。若使用二进制对这些设备进行编码,则所需的二进制位数最少是( )A.2 B.3 C.4 D.55.下列关于数据编码的说法,正确的是( )A.数字化的过程一般需要经过采样、量化与编码B.水银温度计呈现的温度值属于数字信号C.文本数据在计算机内部是以十六进制方式进行存储和处理的D.相对于一维条形码,二维码的信息存储量更少6.有两幅未经压缩的BMP格式图像,A图像参数为800×600像素,16色,B图像参数为400×300像素,256级灰度,则图像A和B的存储容量之比为( )A.2:1 B.3:8 C.6:1 D.12:17.下列关于算法的说法,不正确的是( )A.算法指的是解决任务或完成任务的一系列步骤B.用流程图比用自然语言描述算法更加直观C.用算法解决问题的步骤:抽象与建模、描述算法、设计算法D.一个算法的处理步骤必须是有限的8.在Python中,变量a=1234,能得到其十位数字的表达式是( )A.a%100//10 B.a//100%10 C.a//100 D.a%1009.下列Python表达式中,值为True的是( )A.not"apple"<"book" B.len("ChatGPT")>7C."卓越NO1"[1:3]=="卓越" D.2**5>5**2and2%5!=110.某导航软件根据车速判定堵塞情况,并用不同颜色标示,其判定算法如流程图所示,以下代码与流程图功能一致的是( )A. if x<50: if x<=20 : print("红") else: print("黄") else: print("绿") B. s="红" if x>=50 : s="绿" else: s="黄" print(s) C. s="绿" if x<20: s="红" elif x>=20 s="黄" print(s) D. s="黄" if x<20: s="红" elif x>=50 s="绿" print(s)A.A B.B C.C D.D11.有如下python程序:a=[0]*6a[1]=1a[2]=1for i in range(3,6): a[i]=2*a[i-1]+a[i-2]print(a[5])程序运行后,输出的是( )A.7 B.17 C.27 D.4112.有如下python程序段:s=input("请输入字符串:")yuanyin="aeiouAEIOU"count=0new=""for c in s: if c in yuanyin: new+="*" count+=1 else: new+=cprint("处理后的字符串:",new)print("元音总数:",count)程序运行结果为:处理后的字符串:* l*k* pyth*n,元音总数:4,请问输入语句正确的是( )A.U like pytham B.I like python C.I lake pythcn D.I lake Python二、操作题13.(1)某流程图如图所示,输出的结果c为(2)该流程图包含了算法的哪几种控制结构 (多选,填字母,A:顺序结构,B:分支结构,C:循环结构,,D:树形结构)(3)将流程图编写为python代码,请在划线处补全:n=0c=0while① : n+=3 if② : c+=nprint(c)14.请编写一个Python程序,实现以下功能:①将用户输入的任意进制数字转换为另一个指定进制②支持2-16进制之间的转换③正确处理包含字母的数值(不区分大小写)④对非法输入进行错误提示示例如下:输入:convert("1a",16,2) 输出:11010 输入:convert("1101",2,10) 输出:13输入:convert("12",30,2) 输出:Error:进制范围必须为2-16 输入:convert("27",8,16) 输出:17(1)若输入为convert("10",10,2),输出的结果为(2)实现上述功能的代码如下,请在划线处填入合适的代码。def convert(number,from_base,to_base): if not(2<=from_base<=16)or not(2<=to_base<=16):#验证进制范围 return"Error:进制范围必须为2-16" for i in range(len(number)): #小写字母转换为大写字母 if "a"<=number[i]<="f": s=chr(ord(number[i]-32)) number=① +s+number[i+1:] ans1=0 #将原始数值转换为十进制 for c in number: if "A"<=c<="Z": c=str(ord(c)-55) ans1= ② jz="0123456789ABCDEF "#将十进制转换为目标进制 result="" while ans1>0: ans2=ans1%to_base result= ans1=ans1//to_base return resultnumber=input("请输入一个数:") #主程序from_base=int(input("请输入该数原始进制:"))to_base=int(input("请输入该数目标进制:"))print(convert(③ ))(3)若输入为convert("10",10,16),输出的结果为:10,修改加框处代码,下列选项正确的是( )(单选)A.result+str(ans2) B.ord(ans2+55)+result C.result+jz[ans2] D.jz[ans2]+result15.骰子组合挑战赛。编写一个Python程序,模拟骰子策略游戏,规则如下:初始阶段:玩家和电脑各掷5个骰子(点数1-6),展示双方骰子结果。根据骰子组合计算基础得分:三条:3个相同数字 得10分顺子:5个连续数字(如1-2-3-4-5) 得20分葫芦:3个相同+2个相同 得15分四带一:4个相同+1个其他 得25分五同:5个相同 得50分无特殊组合 计算骰子总和重掷阶段:玩家可选择任意个骰子重掷(输入骰子位置,如135),只能重掷1次。电脑自动策略:若基础得分<15,则随机重掷2个骰子。决胜阶段:最终得分高者获胜,平局则加赛一轮。运行结果如下图所示:(1)你的骰子为[4,2,1,3,4],得分为:(2)实现上述功能的代码如下,请在划线处填入合适的代码。import randomdef roll_dic(): a=[0]*5 for i in range(5): a[i]=random.randint(1,6) #随机生成[1,6]范围的整数 return adef cal_score(a): b=[0]*6 a=sorted(a) #对a里面的元素升序排序 for i in range(5): ① if 5 in b: #判断五同 return 50 if 4 in b: return 25 if 3 in b and 2 in b: return 15 if a==[1,2,3,4,5]or② : return 20 if 3 in b: return 10 return sum(a)def player_turn(): dic=roll_dic() print("你的骰子为:",dic,"得分为:",cal_score(dic)) reroll=int(input("是否重掷?输入位置(如'5',不重掷输入0):")) if reroll==0: #判断是否重掷? return cal_score(dic) else: ③ =random.randint(1,6) print("重掷后骰子:",dic,"得分为:",cal_score(dic)) return cal_score(dic)def computer_turn(): dic=roll_dic() score=cal_score(dic) print("电脑的骰子为:",dic,"得分为:",score) if score<15: reroll_pos=random.sample(range(5),2)#随机挑选两个位置重掷 for pos in reroll_pos: dic[pos]=random.randint(1,6) print("电脑重掷的骰子为:",dic,"得分为:",cal_score(dic)) return cal_score(dic)#主程序player_score=player_turn()computer_score=computer_turn()if player_score>computer_score: print("你赢了!")elif player_score print("电脑赢了!")else: print("平局!加赛回合!")题号 1 2 3 4 5 6 7 8 9 10答案 C B C D A A C A D D题号 11 12答案 B B13. 18 ABC n<10 n%2==014. 1010 number[:i] ans1*from_base+int(c) number,from_base,to_base D15. 14 b[a[i]-1]+=1 a==[2,3,4,5,6] dic[reroll-1] 展开更多...... 收起↑ 资源预览