内容正文:
当湖高级中学2023学年第二学期阶段性测试
高二技术学科 试题卷 2024.5
考生须知:
1.本卷满分100分,考试时间90分钟。
2.答题前,在答题卷指定区域填写班级、姓名、考场号、座位号及准考证号并填涂相应数字。
3.所有答案必须写在答题纸上,写在试卷上无效。
4.考试结束后,只需上交答题纸。
第一部分 信息技术(50分)
一、选择题(本大题共12小题,每小题2分,共 24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1. 下列有关数据、信息的说法,正确的是( )
A. 一张光盘内存储的图片不属于数据
B. 计算机只能处理数字化后的数据
C. 信息的表示、传播、存储不一定依附于某种载体
D. 信息会因别人的获取而发生损耗
2. 关于数制和编码说法,不正确的是( )
A. 8位二进制能表示的最大十进制为255
B. 将模拟声音数字化需要经过编码过程
C. 在早期GB2312字符集中,一个汉字在计算机中存储需要2个字节
D. 在计算机内部,汉字和英文字符均采用ASCII码
3. 下列关于图像数字化的说法,正确的是( )
A. 通过手机拍照并存储可以实现图像的数字化
B. 将BMP格式图像压缩成JPEG格式用到了模数转换
C. 黑白两色图像的颜色位深度至少是2位
D. 一幅24位色的BMP图像,尺寸不变,另存为256色,文件容量将变大
4. 新浪微博拥有超过6亿用户,是中国最大的社交媒体平台之一。2020年3月,该公司宣布,攻击者获取了其部分数据库,影响了5.38亿微博用户及其个人信息,包括真实姓名、网站用户名、性别、位置和电话号码。据报道,攻击者随后在暗网上以250美元的价格出售了该数据库。材料中提到的攻击数据库获取数据行为对信息系统安全造成破坏,下列关于信息系统安全的说法不合理的是( )
A. 下载老师发到QQ群里的压缩包未经杀毒直接解压
B. 就算手机流量很少,也不随意连接公共场所的Wi-Fi
C. 定期更换常用网站的登录密码并设置密保问题
D. 适当减少手机APP申请的权限请求,如“读取通话记录”、“读取位置信息”等
5. 新浪微博拥有超过6亿用户,是中国最大的社交媒体平台之一。2020年3月,该公司宣布,攻击者获取了其部分数据库,影响了5.38亿微博用户及其个人信息,包括真实姓名、网站用户名、性别、位置和电话号码。据报道,攻击者随后在暗网上以250美元的价格出售了该数据库。根据材料描述,下列关于信息系统说法正确的是( )
A. 使用浏览器可以登录新浪微博,这能看出微博只用浏览器/服务器架构搭建开发的
B. 填写用户名密码登录微博主要体现了信息系统的存储功能
C. 由于人们使用计算机和网络的机会和能力存在着差异,所以数字鸿沟仍不可避免
D. 信息系统由五部分组成,包括用户、硬件、软件、信息和通信网络
6. 新浪微博拥有超过6亿用户,是中国最大的社交媒体平台之一。2020年3月,该公司宣布,攻击者获取了其部分数据库,影响了5.38亿微博用户及其个人信息,包括真实姓名、网站用户名、性别、位置和电话号码。据报道,攻击者随后在暗网上以250美元的价格出售了该数据库。下列关于网络系统的说法,不正确的是( )
A. 数据通信是网络系统最基本的功能 B. 移动通信仅指移动设备之间的通信
C. 城域网基本上是一种大型的局域网 D. 网络架设完成后需对网络进行连通性测试
7. 下列关于人工智能的说法,正确的是( )
A. 联结主义认为智能体可以在与环境的交互中不断学习
B. AlphaGo Zero 必须依赖人类棋手数据才能不断提升棋力
C. 随着人工智能的不断发展完善,人类不再需要学习
D. 符号主义依靠推理引擎可以学习推导出新规则、新知识
8. 某算法的部分流程图如图所示,执行该流程图后,最后输出的结果为( )
A. 10,102 B. 8,102 C. 9,100 D. 8,100
9. 列表a包含6个互不相等的元素,即a[0],a[1],a[2],…,a[5],有如下Python程序段:
a=[3,8,2,4,7,5]
cnt1=0;cnt2=0
for i in range(len(a)):
for j in range(1,len(a)-i):
if a[j-1]>a[j]:
a[j-1],a[j]=a[j],a[j-1]
cnt2+=1
cnt1+=1
print(cnt1*cnt2)
已知a的值为[3,8,2,4,7,5],执行该程序段后,cnt1*cnt2的值是( )
A. 75 B. 80 C. 90 D. 120
10. 有如下Python程序段:
q=[-1]*40
head=tail=0
n=40
for i in range(1,n):
if i%4 == 0 or i%7 == 0:
q[tail]=i
tail+=1
print(tail-head)
执行该程序段后,输出的结果是( )
A. 14 B. 13 C. 9 D. 1
11. 下列程序代码执行后不可能的结果是( )
import random
a=[2,3,4,5,6,7] ; b=[0]*6
random.shuffle(a)
i=0
while i<6:
if a[i]%3 == 0:
b[i]=a[i]*2
elif i%2 == 0:
b[i]=a[i]*2+1
i+=1
print(b)
A. [12,0,9,6,11,0] B. [11,6,5,0,15,12] C. [15,6,5,0,9,12] D. [7,0,11,6,0,12]
12. 有如下Python程序段:
import random
a=[[1,3],[3,4],[5,-1],[2,1],[4,2]];head=0
x=random.randint(2,4)
p=q=head
while a[q][0]<x and a[q][1] != -1:
p=q;q=a[q][1]
a[p][1]=a[q][1]
q=head
while q != -1:
print(a[q][0],end=" ")
q=a[q][1]
执行该程序段后,输出的结果可能是( )
A. 1 3 5 2 B. 2 3 4 5 C. 1 2 4 5 D. 1 3 5 4
非选择题部分
二、非选择题(本大题共3小题,其中第13小题10分,第14小题7分,第15小题9分,共26分)
13. 小明设计并搭建了一个智能鱼塘系统。此系统可以对照明时长、水温、水位等数据进行监测与控制。小明搭建水位检测功能时,采用水位传感器实现低于预设水位时报警并自动加水,到达最高水位时停止加水的功能。系统支持远程访问,结构如图a所示,请回答如下问题:
图a
(1)关于控制与反馈流程如图b所示,①②③处填空正确的是________(单选,填字母)
图b
A.传感器 控制器 执行器 B.控制器 执行器 传感器
C.传感器 执行器 控制器 D.控制器 传感器 执行器
(2)该系统网络应用软件的实现架构是________架构。(单选,填字母)。
A.客户端/服务器 B.浏览器/服务器
(3)确定该架构方式属于信息系统前期准备中________过程。(单选,填字母)。
A.需求分析 B.开发模式的选择 C.概要设计 D.详细设计
(4)用Flask Web框架编写网页实现“显示水位”,路由和视图函数部分代码如图c所示,访问该网页的URL是 http://____________。
图c
(5)鱼塘正常水位范围是wmin~wmax,用state=0,1,2分别表示水位正常、偏低和偏高,用程序实现根据当前水位w1设置相应的state,符合要求的________(多选,填字母)。
A.
if wl > wmax:
state = 2
elif wl < wmin:
state = 1
else:
state = 0
B.
if wl < wmin:
state = 1
if wl > wmax:
state = 2
else:
state = 0
C.
state = 0
if wl < wmin:
state = 1
if wl > wmax:
state = 2
D.
if wl < wmin:
state = 1
else:
if wl > wmax:
state = 2
else:
state = 0
(6)系统运行一段时间后,有一次发现水位到达wmin值时,系统没有报警与自动加水。经检查WEB服务器能访问数据库,Wi-Fi也正常,原因可能是:_________
14. 某次考试数据“成绩表.csv”有若干条数据,结构如图a所示,小明利用python对其进行分析,先求出班级内每位同学总分;如图b所示,再绘制出总分成绩前10名的散点图图表。
图a 图b
import pandas as pd
import matplotlib. pyplot as plt
from pylab import mpl
mpl.rcParams[’font.sans-serif’]=[’Microsoft YaHei’] #设置默认字体
df=pd. ①_______ ("成绩表.csv", encoding=’gbk’)
②____=df [[‘语文’,’数学’,’英语’,’物理’,’化学’,’技术’]]. ③____
df1=
plt. title(‘班级前10名成绩’)
x=df1.姓名
y=df1总分
plt. ylim(670, 700)
plt. scatter(x, y)
plt. show()
(1)为完成这项任务,请在划线处填入合适代码。
(2)程序的方框中应填入的正确代码为________。(多选,填字母)。
A.df.sort_values("总分", ascending=False)[0:10]
B.df.sort_values("总分", ascending=True).tail(10)
C.df.sort_values("总分", ascending=False).head(10)
D.df.sort_values("总分", ascending=True)[:-11:-1]
15. 迷宫问题是解决从布置了许多障碍的通道中寻找出路的问题。小帅编写了一段Python程序,通过列表模拟迷宫,其中1表示障碍,0表示道路。当小帅依次输入起点坐标和出口坐标后,程序规划并输出从起点到出口的坐标路径,如图a所示。
图a 图b
算法思路:从起点坐标出发顺某一方向向前探索,若能走通则继续往前走,否则沿原路返回换一个方向,再继续探索,记录每个经过的坐标直至到达出口坐标为止。假如所有可能道路都探索到而未能找到出口,则所假定的迷宫找不到路线。例如起点坐标为2,1,出口坐标为7,7,则输出如图b所示坐标路径。实现上述功能的Python程序如下,请在划线处填入合适的代码。
import random
n=int(input("迷宫长:"))
m=int(input("迷宫宽:"))
#生成m*n二维列表maze,并将值初始化为1
maze=[[1 for i in range(m)] for j in range(n)]
#随机产生一个迷宫地形图maze,1表示障碍,0表示道路,代码略
print(maze) #输出迷宫二维列表maze
#输入起点及出口坐标,以","分割,如start=[2,1]
start=list(map(int,input("请输入起点(行,列):").split(",")))
end=list(map(int,input("请输入出口(行,列):").split(",")))
#判断start和end坐标是否为道路,代码略
maze[start[0]][start[1]]=-1
stk=[0]*100 ; top=-1
top+=1 ; stk[top]=start #起点入栈
d=[[1,0],[-1,0],[0,1],[0,-1]]
while (1)____:
x,y=stk[top][0],stk[top][1]
if (2)____: #到达出口
print(stk[:top+1])
break
for step in d:
xx=x+step[0]
(3)____
if (4)____:
top+=1
stk[top]=[xx,yy]
maze[xx][yy]=-1
(5)____
else:
top-=1
else:
print("找不到路线")
第1页/共1页
学科网(北京)股份有限公司
$$
当湖高级中学2023学年第二学期阶段性测试
高二技术学科 试题卷 2024.5
考生须知:
1.本卷满分100分,考试时间90分钟。
2.答题前,在答题卷指定区域填写班级、姓名、考场号、座位号及准考证号并填涂相应数字。
3.所有答案必须写在答题纸上,写在试卷上无效。
4.考试结束后,只需上交答题纸。
第一部分 信息技术(50分)
一、选择题(本大题共12小题,每小题2分,共 24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1. 下列有关数据、信息的说法,正确的是( )
A. 一张光盘内存储的图片不属于数据
B. 计算机只能处理数字化后的数据
C. 信息的表示、传播、存储不一定依附于某种载体
D. 信息会因别人的获取而发生损耗
【答案】B
【解析】
【详解】本题考查数据、信息的描述。一张光盘内存储的图片属于数据;计算机只能处理数字化后的数据;信息的表示、传播、存储必须依附于某种载体;信息不会因别人的获取而发生损耗。故选B。
2. 关于数制和编码的说法,不正确的是( )
A. 8位二进制能表示的最大十进制为255
B. 将模拟声音数字化需要经过编码过程
C. 在早期的GB2312字符集中,一个汉字在计算机中存储需要2个字节
D. 在计算机内部,汉字和英文字符均采用ASCII码
【答案】D
【解析】
【详解】本题考查的是数制和编码。在计算机内部,英文字符采用ASCII码,汉字采用GB和BIG5码。故本题应选D。
3. 下列关于图像数字化的说法,正确的是( )
A. 通过手机拍照并存储可以实现图像的数字化
B. 将BMP格式图像压缩成JPEG格式用到了模数转换
C. 黑白两色图像的颜色位深度至少是2位
D. 一幅24位色的BMP图像,尺寸不变,另存为256色,文件容量将变大
【答案】A
【解析】
【详解】本题考查图像数字化相关内容。A选项,通过手机拍照并存储可以实现图像的数字化,选项正确。B选项,将BMP格式图像压缩成JPEG格式用到了压缩技术,并未用到模数转换,选项错误。C选项,黑白两色图像的颜色位深度是1位,选项错误。D选项,256色量化位为8(28=256),把一幅24位色的图像另存为256色,文件容量将变小,选项错误。故本题答案是A选项。
4. 新浪微博拥有超过6亿用户,是中国最大的社交媒体平台之一。2020年3月,该公司宣布,攻击者获取了其部分数据库,影响了5.38亿微博用户及其个人信息,包括真实姓名、网站用户名、性别、位置和电话号码。据报道,攻击者随后在暗网上以250美元的价格出售了该数据库。材料中提到的攻击数据库获取数据行为对信息系统安全造成破坏,下列关于信息系统安全的说法不合理的是( )
A. 下载老师发到QQ群里的压缩包未经杀毒直接解压
B. 就算手机流量很少,也不随意连接公共场所Wi-Fi
C. 定期更换常用网站的登录密码并设置密保问题
D. 适当减少手机APP申请的权限请求,如“读取通话记录”、“读取位置信息”等
【答案】A
【解析】
【详解】本题考查的是信息系统安全。下载老师发到QQ群里的压缩包要经过杀毒查杀后解压。故选A。
5. 新浪微博拥有超过6亿用户,是中国最大的社交媒体平台之一。2020年3月,该公司宣布,攻击者获取了其部分数据库,影响了5.38亿微博用户及其个人信息,包括真实姓名、网站用户名、性别、位置和电话号码。据报道,攻击者随后在暗网上以250美元的价格出售了该数据库。根据材料描述,下列关于信息系统说法正确的是( )
A. 使用浏览器可以登录新浪微博,这能看出微博只用浏览器/服务器架构搭建开发的
B. 填写用户名密码登录微博主要体现了信息系统的存储功能
C. 由于人们使用计算机和网络的机会和能力存在着差异,所以数字鸿沟仍不可避免
D. 信息系统由五部分组成,包括用户、硬件、软件、信息和通信网络
【答案】C
【解析】
【详解】本题考查信息系统相关内容。A选项,使用浏览器可以登录新浪微博,这能看出微博可以用浏览器/服务器架构搭建开发,得不出是唯一开发方式的结论,选项错误。B选项,填写用户名密码登录微博主要体现了信息系统的输入功能,选项错误。C选项,数字鸿沟又称信息鸿沟,是指在全球数字化进程中,不同国家、地区、行业、企业、社区之间,由于对信息、网络技术的拥有程度、应用程度以及创新能力的差别而造成的信息落差及贫富进一步两极分化的趋势,由于人们使用计算机和网络的机会和能力存在着差异,所以数字鸿沟仍不可避免,选项正确。D选项,信息系统是由计算机硬件、网络和通信设备、计算机软件、信息资源、信息用户和规章制度组成的以处理信息流为目的的人机一体化系统,选项错误。故本题答案是C选项。
6. 新浪微博拥有超过6亿用户,是中国最大的社交媒体平台之一。2020年3月,该公司宣布,攻击者获取了其部分数据库,影响了5.38亿微博用户及其个人信息,包括真实姓名、网站用户名、性别、位置和电话号码。据报道,攻击者随后在暗网上以250美元的价格出售了该数据库。下列关于网络系统的说法,不正确的是( )
A. 数据通信是网络系统最基本的功能 B. 移动通信仅指移动设备之间的通信
C. 城域网基本上是一种大型的局域网 D. 网络架设完成后需对网络进行连通性测试
【答案】B
【解析】
【详解】本题考查网络系统。移动通信不仅指移动设备之间的通信,还包括移动设备与固定设备之间的通信。故答案为:B。
7. 下列关于人工智能的说法,正确的是( )
A. 联结主义认为智能体可以在与环境的交互中不断学习
B. AlphaGo Zero 必须依赖人类棋手数据才能不断提升棋力
C. 随着人工智能的不断发展完善,人类不再需要学习
D. 符号主义依靠推理引擎可以学习推导出新规则、新知识
【答案】D
【解析】
【详解】本题考查人工智能相关内容。A选项,行为主义从“交互—反馈”角度来刻画智能行为,主张在与环境的交互中不断学习,选项错误。B选项,AlphaGo Zero不依赖人类棋手数据而在自我博弈中不断提升棋力,选项错误。C选项,随着人工智能的不断发展完善,人类仍然需要学习,选项错误。D选项,符号主义以符号反映客观世界中的语义,依赖知识库或推理引擎对符号进行推理和运算,选项正确。故本题答案是D选项。
8. 某算法的部分流程图如图所示,执行该流程图后,最后输出的结果为( )
A. 10,102 B. 8,102 C. 9,100 D. 8,100
【答案】A
【解析】
【详解】本题考查算法流程图相关内容。分析流程图,k初值为1,循环体内,若i的值能被4整除(0、12、24...、96),这样的i值共9个,k值执行加1操作,所以k值最终为10;i每次递增6;i<100条件成立时执行循环体,当i值为102时,循环结束,所以i值最终为102。故本题答案是A选项。
9. 列表a包含6个互不相等的元素,即a[0],a[1],a[2],…,a[5],有如下Python程序段:
a=[3,8,2,4,7,5]
cnt1=0;cnt2=0
for i in range(len(a)):
for j in range(1,len(a)-i):
if a[j-1]>a[j]:
a[j-1],a[j]=a[j],a[j-1]
cnt2+=1
cnt1+=1
print(cnt1*cnt2)
已知a的值为[3,8,2,4,7,5],执行该程序段后,cnt1*cnt2的值是( )
A. 75 B. 80 C. 90 D. 120
【答案】C
【解析】
【详解】本题考查Python程序。程序通过嵌套循环实现冒泡排序,并使用两个计数器cnt1和cnt2分别记录比较次数和交换次数。程序思路:外层循环控制排序的轮数。内层循环进行相邻元素的比较和交换。cnt1记录每次比较的次数。cnt2记录每次发生交换的次数。最终输出cnt1和cnt2的乘积。运行结果:程序运行后,cnt1的值为15,cnt2的值为6,因此cnt1*cnt2的值为90。故答案为:C。
10. 有如下Python程序段:
q=[-1]*40
head=tail=0
n=40
for i in range(1,n):
if i%4 == 0 or i%7 == 0:
q[tail]=i
tail+=1
print(tail-head)
执行该程序段后,输出的结果是( )
A. 14 B. 13 C. 9 D. 1
【答案】B
【解析】
【详解】本题考查的是队列操作。程序功能是将1~39中能被4或7整除的数入队,输出队列中元素的个数,即求1~39中能被4或7整除的数的个数。1~39中能被4或7整除的数共有13个,故选B。
11. 下列程序代码执行后不可能的结果是( )
import random
a=[2,3,4,5,6,7] ; b=[0]*6
random.shuffle(a)
i=0
while i<6:
if a[i]%3 == 0:
b[i]=a[i]*2
elif i%2 == 0:
b[i]=a[i]*2+1
i+=1
print(b)
A. [12,0,9,6,11,0] B. [11,6,5,0,15,12] C. [15,6,5,0,9,12] D. [7,0,11,6,0,12]
【答案】D
【解析】
【详解】本题考查Python程序。由分支结构可知,当a[i]%3==0时,也就是a[i]=3或者6时,有b[i]=a[i]*2。而当i%2==0时,一定有b[i]=a[i]*2+1,此时也就是说当i为偶数时,b[i]为奇数。在D选项中,a[4]=0,显然不符合题意,故答案为:D。
12 有如下Python程序段:
import random
a=[[1,3],[3,4],[5,-1],[2,1],[4,2]];head=0
x=random.randint(2,4)
p=q=head
while a[q][0]<x and a[q][1] != -1:
p=q;q=a[q][1]
a[p][1]=a[q][1]
q=head
while q != -1:
print(a[q][0],end=" ")
q=a[q][1]
执行该程序段后,输出的结果可能是( )
A. 1 3 5 2 B. 2 3 4 5 C. 1 2 4 5 D. 1 3 5 4
【答案】C
【解析】
【详解】本题考查Python程序。给定一个链表a,每个节点包含两个元素,第一个元素是当前节点的值,第二个元素是指向下一个节点的索引。程序段中使用了链表来表示一个有序序列,并根据随机生成的数x对链表进行部分遍历和删除操作。程序段的大致思路:给定一个有序链表a和一个随机数x。从链表头开始遍历链表,找到第一个值大于等于x或者指向下一个节点为空的节点,记录当前节点的索引为p。删除索引为p的节点,并将其前一个节点的指针指向其后一个节点。重新遍历链表,并输出节点的值。根据以上思路,当x为2时,输出的结果为:1 3 4 5;当x为3时,输出的结果为:1 2 4 5;当x为4时,输出的结果为:1 2 3 5。故答案为:C。
非选择题部分
二、非选择题(本大题共3小题,其中第13小题10分,第14小题7分,第15小题9分,共26分)
13. 小明设计并搭建了一个智能鱼塘系统。此系统可以对照明时长、水温、水位等数据进行监测与控制。小明搭建水位检测功能时,采用水位传感器实现低于预设水位时报警并自动加水,到达最高水位时停止加水的功能。系统支持远程访问,结构如图a所示,请回答如下问题:
图a
(1)关于控制与反馈流程如图b所示,①②③处填空正确的是________(单选,填字母)
图b
A.传感器 控制器 执行器 B.控制器 执行器 传感器
C.传感器 执行器 控制器 D.控制器 传感器 执行器
(2)该系统网络应用软件的实现架构是________架构。(单选,填字母)。
A.客户端/服务器 B.浏览器/服务器
(3)确定该架构方式属于信息系统前期准备中的________过程。(单选,填字母)。
A.需求分析 B.开发模式的选择 C.概要设计 D.详细设计
(4)用Flask Web框架编写网页实现“显示水位”,路由和视图函数部分代码如图c所示,访问该网页的URL是 http://____________。
图c
(5)鱼塘正常水位范围是wmin~wmax,用state=0,1,2分别表示水位正常、偏低和偏高,用程序实现根据当前水位w1设置相应的state,符合要求的________(多选,填字母)。
A.
if wl > wmax:
state = 2
elif wl < wmin:
state = 1
else:
state = 0
B.
if wl < wmin:
state = 1
if wl > wmax:
state = 2
else:
state = 0
C.
state = 0
if wl < wmin:
state = 1
if wl > wmax:
state = 2
D.
if wl < wmin:
state = 1
else:
if wl > wmax:
state = 2
else:
state = 0
(6)系统运行一段时间后,有一次发现水位到达wmin值时,系统没有报警与自动加水。经检查WEB服务器能访问数据库,Wi-Fi也正常,原因可能是:_________
【答案】 ①. B ②. B ③. B ④. 172.168.0.106:8080/show ⑤. ACD ⑥. ①水位传感器不能监测水位高低(水位传感器故障)、②执行器故障,自动加水设备不受控制、③智能终端损坏,数据不能正常处理与反馈、④物联网IOT模块损坏,数据不能正常传输
【解析】
【详解】本题考查信息系统的设计。
(1)现实世界的数据通过传感器传入信息系统中,通过控制器对执行器发出相关指令,作用于受控对象。故①为控制器,②为执行器,③为传感器,选B。
(2)由题中图a可知,该系统通过互联网让浏览器服务器连接,采用的是B/S架构,故选B。
(3)确定该架构方式属于信息系统前期准备中的开发模式的选择。故选B。
(4)由程序代码可知,服务器的IP地址为172.168.0.106,端口为8080,路由为/show,故该网页的URL为http://172.168.0.106:8080/show。
(5)考查分支语句的使用。根据题干,水位wl>wmax 时,state的值为2,wl < wmin时,state的值为1,介于二者之间时为0,B选项未区分出三种情况,故选ACD。
(6)系统能正常运行,检查Web服务器能访问数据库,Wi-Fi也正常,只能从水位传感器、执行器、智能终端、IoT模块去考虑。可能的原因有:①水位传感器不能检测水位高低(水位传感器故障)、②执行器故障,自动加水设备不受控制、③智能终端损坏,数据不能正常处理与反馈、④物联网IOT模块损坏,数据不能正常传输。
14. 某次考试数据“成绩表.csv”有若干条数据,结构如图a所示,小明利用python对其进行分析,先求出班级内每位同学的总分;如图b所示,再绘制出总分成绩前10名的散点图图表。
图a 图b
import pandas as pd
import matplotlib. pyplot as plt
from pylab import mpl
mpl.rcParams[’font.sans-serif’]=[’Microsoft YaHei’] #设置默认字体
df=pd. ①_______ ("成绩表.csv", encoding=’gbk’)
②____=df [[‘语文’,’数学’,’英语’,’物理’,’化学’,’技术’]]. ③____
df1=
plt. title(‘班级前10名成绩’)
x=df1.姓名
y=df1.总分
plt. ylim(670, 700)
plt. scatter(x, y)
plt. show()
(1)为完成这项任务,请在划线处填入合适代码。
(2)程序的方框中应填入的正确代码为________。(多选,填字母)。
A.df.sort_values("总分", ascending=False)[0:10]
B.df.sort_values("总分", ascending=True).tail(10)
C.df.sort_values("总分", ascending=False).head(10)
D.df.sort_values("总分", ascending=True)[:-11:-1]
【答案】 ①. read_csv ②. df["总分"] ③. sum(axis=1) ④. ACD
【解析】
【详解】本题考查的是数据分析。①处,read_csv()函数在pandas中用来读取csv文件,故此处应为:read_csv;②③处,求出班级内每位同学的总分,故②处应为:df["总分"],按axis = 1代表沿着列水平方向计算,故③处为:sum(axis=1);④处,绘制出总分成绩前10名,故可以按总分降序排列,取前10,也可以按总分升序排列,取后10,ascending=false表示降序排序,tail(10)是从后往前取,画出的散点图顺序与图b不一致,故选项ACD正确。
15. 迷宫问题是解决从布置了许多障碍的通道中寻找出路的问题。小帅编写了一段Python程序,通过列表模拟迷宫,其中1表示障碍,0表示道路。当小帅依次输入起点坐标和出口坐标后,程序规划并输出从起点到出口的坐标路径,如图a所示。
图a 图b
算法思路:从起点坐标出发顺某一方向向前探索,若能走通则继续往前走,否则沿原路返回换一个方向,再继续探索,记录每个经过的坐标直至到达出口坐标为止。假如所有可能道路都探索到而未能找到出口,则所假定的迷宫找不到路线。例如起点坐标为2,1,出口坐标为7,7,则输出如图b所示坐标路径。实现上述功能的Python程序如下,请在划线处填入合适的代码。
import random
n=int(input("迷宫长:"))
m=int(input("迷宫宽:"))
#生成m*n二维列表maze,并将值初始化为1
maze=[[1 for i in range(m)] for j in range(n)]
#随机产生一个迷宫地形图maze1表示障碍,0表示道路,代码略
print(maze) #输出迷宫二维列表maze
#输入起点及出口坐标,以","分割,如start=[2,1]
start=list(map(int,input("请输入起点(行,列):").split(",")))
end=list(map(int,input("请输入出口(行,列):").split(",")))
#判断start和end坐标是否为道路,代码略
maze[start[0]][start[1]]=-1
stk=[0]*100 ; top=-1
top+=1 ; stk[top]=start #起点入栈
d=[[1,0],[-1,0],[0,1],[0,-1]]
while (1)____:
x,y=stk[top][0],stk[top][1]
if (2)____: #到达出口
print(stk[:top+1])
break
for step in d:
xx=x+step[0]
(3)____
if (4)____:
top+=1
stk[top]=[xx,yy]
maze[xx][yy]=-1
(5)____
else:
top-=1
else:
print("找不到路线")
【答案】 ①. top != -1 ②. [x, y] == end ③. yy = y + step[1] ④. 0 <= xx < n and 0 <= yy < m and maze[xx][yy] == 0 ⑤. break
【解析】
【详解】本题考查Python综合应用。
(1)这个条件用于判断栈否为空。在迷宫探索过程中,只有栈不为空时,才需要继续探索。故答案为:top != -1。
(2)当当前位置坐标等于出口坐标时,表示已经找到了出口,可以结束探索并输出路径。故答案为:[x, y] == end。
(3)在每个方向上进行探索时,需要计算下一步的纵坐标。这里的step[1]表示方向变化的纵坐标的增量。故答案为:yy = y + step[1]。
(4)在探索下一步时,需要进行边界检查和障碍物检查。这个条件确保下一步在迷宫范围内且为可通行的道路(值为0)。故答案为:0 <= xx < n and 0 <= yy < m and maze[xx][yy] == 0。
(5)如果找到了下一步可以继续探索位置,则将其入栈,并且跳出当前方向的探索循环,继续下一步的探索。故答案为:break。
第1页/共1页
学科网(北京)股份有限公司
$$