浙江省杭州市周边重点中学2022-2023学年高二信息技术下学期4月期中试卷(Word版附解析)
展开这是一份浙江省杭州市周边重点中学2022-2023学年高二信息技术下学期4月期中试卷(Word版附解析),共12页。试卷主要包含了选择题,非选择题等内容,欢迎下载使用。
浙江省杭州市周边重点中学2022-2023学年高二下学期信息技术4月期中试卷
一、选择题(本大题共13小题,每小题2分,共26分。每小题列出的四个备选项中只有一个符合题目要求,不选,错选、多选均不得分。)
1. ChatGPT是由OpenAI在2022年11月30日发布的全新聊天机器人模型,一经推出,迅速在社交媒体上走红,短短5天,注册用户数就超过100万。ChatGPT是人工智能技术驱动的自然语言处理工具,使用了Transformer神经网络架构,会通过连接大量的语料库来训练模型,使得ChatGPT具备上知天文下知地理,还能根据聊天的上下文进行互动,真正像人类一样聊天交流,甚至能完成撰写文案、代码、写论文等任务。下列有关数据和信息说法不正确的是:( )
A. 材料中的 100 是数据,数据的表现形式可以是文字、图形、图像、音频等
B. 数据不是信息, 信息是数据经过解释所产生的意义
C. 对所有用户而言,使用 ChatGPT 获取信息的价值是相同的
D. ChatGPT 迅速在社交媒体上走红, 说明信息具有共享性
【答案】C
【解析】
【详解】本题主要考查数据和信息的描述。材料中的 100 是数据,数据的表现形式可以是文字、图形、图像、音频等;数据不是信息, 信息是数据经过解释所产生的意义; 对所有用户而言,使用 ChatGPT 获取信息的价值是不相同的;ChatGPT 迅速在社交媒体上走红, 说明信息具有共享性,故本题选C选项。
2. 下列有关人工智能的说法正确的是:( )
A. 多层神经网络是一种典型的深度学习模型, 不依赖训练数据
B. ChatGPT 上知天文下知地理,说明人工智能可以模拟人脑的全部智能
C. 人工智能在不同的岗位取代人类, 但从长期来看科技带来的就业远大于失业
D. 人工智能技术推动人类社会进步的同时,不可能威胁人类安全
【答案】C
【解析】
【详解】本题主要考查人工智能技术的描述。多层神经网络是一种典型的深度学习模型,依赖训练数据;ChatGPT 虽上知天文下知地理,但人工智能还可以模拟人脑的全部智能;人工智能在不同的岗位取代人类, 但从长期来看科技带来的就业远大于失业;人工智能技术推动人类社会进步的同时,有可能威胁人类安全,故本题选C选项。
3. 下列关于数制和编码的说法正确的是:( )
A. 将末位为 0 的十六进制数转换为二进制数后,二进制数的末位不一定是 0
B. 将模拟信号转换成数字信号存入计算机,不会引起失真
C. 汉字在计算机内部采用十六进制编码, 一个汉字占用 2 个字节
D. 二维码比一维条形码存储容量更大,功能更强
【答案】D
【解析】
【详解】本题主要考查数制和编码描述。将末位为0 的十六进制数转换为二进制数后,二进制数的末位一定是0;将模拟信号转换成数字信号存入计算机,会引起失真;汉字在计算机内部采用二进制编码,一个汉字占用 2 个字节;二维码比一维条形码存储容量更大,功能更强,故本题选D选项。
4. 下列有关大数据的说法不正确的是:( )
A. 大数据具有数据体量大、速度快、数据类型多、价值密度低的特征
B. 大数据由于量太大, 因此只做抽样样本分析
C. 处理大数据时, 一般采用“分治”思想
D. 网络的实时个性化推荐适合采用流计算处理数据
【答案】B
【解析】
【详解】本题主要考查大数据的描述。大数据具有数据体量大、速度快、数据类型多、价值密度低的特征;大数据是对全体样本进行分析;处理大数据时,一般采用“分治”思想;网络的实时个性化推荐适合采用流计算处理数据,故本题选B选项。
5. 以下行为符合个人信息安全要求的是:( )
A. 在电脑上安装并及时更新病毒检测软件
B. 在手机上打开中奖短信链接
C. 积极配合陌生电话的问卷调查
D. 购买 QQ 群里低价出售的游戏稀有装备
【答案】A
【解析】
【详解】本题主要考查信息安全。结合选项,可知在电脑上安装并及时更新病毒检测软件符合个人信息安全要求,故本题选A选项。
6. 下列有关数据结构的说法不正确的是:( )
A. 频繁进行数据插入和删除操作,链表效率要比数组高
B. 单击浏览器“后退”按钮可回到刚才浏览过的网页, 说明网页数据是采用栈进行组织的
C. 队列是一种先进先出的线性表,插入一端为队首,删除一端为队尾
D. 使用数组在进行数据插入和删除操作时,不一定会引起数据移动
【答案】C
【解析】
【详解】本题主要考查数据结构的描述。队列是一种先进先出的线性表,插入一端为队尾,删除一端为队首,故本题选C选项。
7. 某算法的部分流程图如图所示,执行这部分流程,若输入g的值依次为 18,28,36,60, 则输出值 s,i 依次为:( )
A. 20,3 B. 10,4 C. 10,3 D. 13,4
【答案】B
【解析】
【详解】本题主要考查算法流程图的执行。i=0,m=6,s=0;
第一遍循环,满足i<=3,输入g=18,r=g//m=3,不满足3<r<=6,i=i+1=1;
第二遍循环,满足i<=3,输入g=28,r=g//m=4,满足3<r<=6,s=s+r=4,i=i+1=2;
第三遍循环,满足i<=3,输入g=36,r=g//m=6,满足3<r<=6,s=s+r=10,i=i+1=3;
第四遍循环,满足i<=3,输入g=60,r=g//m=10,不满足3<r<=6,i=i+1=4;
第五遍循环,不满足i<=3,输出s和i的值分别是10、4,故本题选B选项。
8. 下列python表达式的值为False的是:( )
A. 2**4>=4**2 B. 3 in ["3","6"]
C. 1en(str(1)+"3") D. 3*4//5%2+4==4
【答案】B
【解析】
【详解】本题考查的是Python表达式。2**4>=4**2值为True。表达式中3 in ["3","6"]的3一个为数值类型,一个位字符类型,故其值为False。len(str(1)+"3")=2。3*4//5%2+4==4值为True。故本题应选B。
9. 左右对称的字符串称回文串。若要判断字符串s是否为回文串,可以先找到s的中间位置mid=len(s)//2,再采用切片操作取出s的左半部分left=s[0:mid],然后取出s的右半部分并反转,存储在变量right中,若left与right相等,则为回文串。则下列表达式能正确表达变量right值的是:( )
A. s[mid::][::-1] B. s[mid+1::][::-1]
C. s[len(s)-1:mid:-1] D. s[-1:-mid-1:-1]
【答案】D
【解析】
【详解】本题主要考查Python字符串切片操作。切片操作基本表达式:object[start_index:end_index:step],step:正负数均可,其绝对值大小决定了切取数据时的“步长”,而正负号决定了“切取方向”,正表示“从左往右”取值,负表示“从右往左”取值。start_index:表示起始索引(包含该索引对应值),该参数省略时,表示从对象“端点”开始取值。end_index:表示终止索引(不包含该索引对应值),该参数省略时,表示一直取到数据“端点”。能正确表达变量right值的是s[-1:-mid-1:-1],故本题选D选项。
10. 有如下 Python 程序段:
a=[1,5,9,2,6,8,3,4,7] n=0 ;flag=True
for i in range(len(a)-1):
if a[i] < a[i+1] and flag==True:
n+=1;flag=False
elif a[i]>a[i+1] and flag==False:
n-=1;flag=True
print(n)
执行上述程序段后, 输出的值为:( )
A. 2 B. 0 C. -1 D. 1
【答案】D
【解析】
【详解】本题主要考查Python程序的执行。分析程序可知,列表a中相邻2个数呈升序时n递增1并且赋值flag为False,反正n递减1并True。1<5满足if分支,5<9均不满足,9>2满足elif分支,2<6满足if分支,6<8均不满足,8>3满足elif分支,3<4满足if分支,4<7均不满足,因此n=0+1-1+1-1+1=1,故本题选D选项。
11. 有1个队列,队首到队尾的元素依次为1,2,3,4,5。约定:T操作是指队列中1个元素出队后再入队,Q操作是指队列中1个元素出队。则经过TTQTTQTTQ系列操作后,队列中队首到队尾的元素依次为:( )
A. 4,5 B. 5,4 C. 2,4 D. 4,2
【答案】C
【解析】
【详解】本题考查的是队列操作。队列是先进先出,T操作是指队列中1个元素出队后再入队,Q操作是指队列中1个元素出队,队首到队尾的元素依次为1,2,3,4,5。经过TT后,队首到队尾的元素依次为4,5,1,2,3;经过Q后,队首到队尾的元素依次为4,5,1,2;经过TT后,队首到队尾的元素依次为1,2,4,5;经过Q后,队首到队尾的元素依次为1,2,4;经过TT后,队首到队尾的元素依次为2,4,1;经过Q后,队首到队尾的元素依次为2,4。选项C正确。
12. 有如下 Python 程序段:
import random
p="abcde*";st=[] ;s="";i=0
while i<=5:
m=random.randint(0,1)
if m==0:
st.append(p[i])
i+=1
elif len(st)>0:
s+=st.pop()
print(s)
执行上述程序段后,输出结果可能的是:( )
A. a* B. cdabe C. abcde* D. cdba
【答案】D
【解析】
【详解】本题主要考查Python程序的执行。字符“*”是最后一个字符,显然执行了if分支,不会再执行elif分支,因此输出的结果不可能含有“*”,排除A、C选项。选项B中,输出的第一个字符是“c”,说明按a、b、c的顺序进入列表st中,则字符“a”和“b”拼接到s中的顺序只能是“ba”,不可能是“ab”,因此排除选项C,故本题选D选项。
13. 有两个降序序列的链表a,b。现将链表b中的数据合并到链表a,形成一个新的降序序列存于链表a,实现数据合并的代码段如下:
a = [[98,1],[96,2],[95,3],[93,4],[90,-1]];b = [[99,1],[97,2],[94,3],[93,4],[92,-1]]
head_a = head_b = 0
pre = p = head_a;q = head_b
while q!=-1:
if p!=-1 and (1) :
pre=p
p=a[p][1]
else:
a.append( (2) )
if p==head_a:
pre=head_a=len(a)-1
else:
a[pre][1]= (3)
pre=len(a)-1
q=b[q][1]
上述程序段中可选填的语句为:
①a[p][0]>= b[q][0] ② a[p][0]<= b[q][0] ③q
④len(a)-1 ⑤[b[p][0],q] ⑥[b[q][0],p]
则划线处填写的语句依次为:( )
A. ①⑥④ B. ①⑤④ C. ①⑥③ D. ②⑥③
【答案】A
【解析】
【详解】本题主要考查Python程序的执行。
(1)由下面代码pre=p,p=a[p][1],即p指向了下一个节点,说明p节点的值大于q节点的值,故此处判断条件是a[p][0]>= b[q][0]。(2)如果不满足if判断条件,说明q节点的值比较大,将b[q][0]加入到列表a中,指针域是p,故填[b[q][0],p]。(3)如果p不等于head_a,此时 pre=head_a=len(a)-1,则更新pre节点的指针域为len(a)-1,q指向下一个节点,继续比较,故本题选A选项。
二、非选择题(本大题共3小题,7+8+9,共24分)
14. 信息时代要提升个人信息安全意识,确保个人信息安全,需经常修改登录密码,小明设计一种字符加密方法,用原密码加密生成新密码。他设计的加密规则如下:
【1】将原密码中的小写字母转换成大写字母;
【2】将原密码中的大写字母转换成小写字母;再利用移位秘钥中对应的数字循环右移,移位秘钥不够时可以循环使用。如移位密钥为“312”,待加密字母“abcde”,则应将字母a,b,c,d,e分别循环右移3位、1位、2位、3位、1位;
【3】将原密码中的数字转换为与其对称的数字,例如:0→9,3→6,5→4……9→0;
【4】原密码中其它特殊字符不改变。
程序运行界面如图所示,实现上述功能的程序代码段如下:
def change(zf):
if "A"<=zf<="Z":
s=zf.lower() else: #将字符 zf 中的大写字母转化为小写字母
else:
s=zf.upper() #将字符 zf 中的小写字母转化为大写字母
return ①
pw=input("请输入原密码:")
yw=input("请输入移位密钥: ")
res="";n=0
for ch in pw:
if "a"<=ch<="z":
ch=change(ch)
"A"<=ch<="Z":
ch=change(ch)
ch=chr((ord(ch)-97+int(yw[n]))%26+97)
n= ②
elif "0"<=ch<="9":
ch= ③
res=res+ch
print("生成新密码:",res)
(1)请在划线处填上合适代码。
①_______②________③_______
(2)若将加框处代码 elif 改为 if,则图中生成的新密码为: ____。
【答案】 ①. s ②. (n+1)%len(yw); ③. str(9-int(ch))或 chr(57-ord(ch)+48)或 str(57-ord(ch)) ④. dceg@mz479
【解析】
【详解】本题主要考查Python程序的综合应用。①change(zf)函数实现将字符f进行大小写转换,最后返回转换后的字符s,故填s。②此处是将密钥进行循环移位,故填(n+1)%len(yw)。③将原密码中的数字转换为与其对称的数字,例如:0→9,3→6,5→4……9→0;故此处填str(9-int(ch))或 chr(57-ord(ch)+48)或 str(57-ord(ch))。④若将加框处代码 elif 改为 if,发生变化的字符是原新密码中的“LX”,字符“lx”经过第一个if分支会变为“LX”,字符“LX”经过第二个if条件后会变为“mz”,因此图中生成的新密码为:dceg@mz479。
15. 某中学高一年级完成一次7选3意向调查,数据存储在“xk73.xlsx”中,如图a所示,其中1代表选择科目,0代表弃选科目。
图a
(1)使用 pandas 编程计算本次选课各门课人数占总人数的比例, 请在划线处填入合适的代码。
import pandas as pd
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']#图表显示中文
df=pd.read_excel ("______ ")
a=[""]*len(df) #存储每个学生的选课组合
dic={"物":0,"化":0,"生":0,"政":0,"历":0,"地":0,"技":0}
for i in df.index:
for j in df.columns[3:]:
if df.at[i,j]==1:
____________
a[i]+=j
for i in dic.keys():
dic[i]=round(dic[i]/len(df)*100,2)
(2)按照各科选考人数占比创建如图b所示的图表。
图 b
df1=pd.DataFrame({"学科":dic.keys(),"人数占 比":dic.values()})
df1= ①
plt.title("各科选考人数占比")
plt.bar ( ② , label="人数占比") plt.legend()
plt.show ()
观察图所示,横线处应填入的代码: ①_______②_______ (选填字母)
A.df1.sort_values("人数占比",ascending=True)
B.df1.sort_values("人数占比",ascending=False)
C.df1.学科,df1.人数占比
D.df1.人数占比, df1.学科
(3)小李同学想查询某种七选三组合的有多少人。以下程序代码可以为小李同学提供查询功能,程序运行示例如图c所示,请在划线处填上合适代码。
图 c
cx=input("请输入需要查询的选课组合: ")
cnt=0
for i in range(len(a)):
if _________:
cnt=cnt+1
print(f"选择{cx}组合的同学共有: {cnt}人")
【答案】 ① xk73.xlsx ②. dic[j]+=1 ③. B ④. C ⑤. a[i]==cx 或其他等价表达式
【解析】
【详解】本题主要考查Python程序的综合应用。
①数据存储在“xk73.xlsx”中,此处使用read_excel函数读取该表格,故填xk73.xlsx。
②此处统计对应科目的选考人数,当df.at[i,j]==1时,dic[j]递增1,故填dic[j]+=1。
③由图b可知,按“人数占比”进行降序排序,故填df1.sort_values("人数占比",ascending=False)。
④由图b可知,横坐标是学科,纵坐标是人数占比,故填df1.学科,df1.人数占比。
⑤a=[""]*len(df)存储每个学生的选课组合,故此处if判断条件是a[i]==cx。
16. 某工厂需要加工n批货物,但同一时间只能加工同一批货物。货物的信息包含送达时间、加工时间和是否加急(0表示不加急,1表示加急),每批货物的送达时间各不相同,已送达的货物按照是否加急分别排队,先到达先入队,每次加工都优先处理加急货物队列,选取队首货物出队进行加工(同一时刻出现入队和出队时,先处理入队)。求出所有货物的平均等待时长,其中每批货物等待时长为其开始加工的时间与送达时间的时间差。
(1)由题意可知,图中待加工货物A、B、C、D、E加工顺序应为A-C-B-E-D。A、C、B、E的等待时长分别为0、0、2、1、那么D等待时长为:_______;
货物编号 | 送达时间 | 加工时间 | 是否加急 |
A | 0 | 2 | 0 |
B | 1 | 3 | 0 |
C | 2 | 1 | 1 |
D | 4 | 2 | 0 |
E | 5 | 2 | 1 |
(2)实现模拟加工过程并计算平均等待时长的部分Python程序段如下,请在划线处填入合适代码。
读取n批待加工货物信息存于列表data,data中的数据已经按货物送达时间升序排列。例如存储题中实例的数据:
data=[["A",0,2,0],["B",1,3,0],["C",2,1,1],["D",4,2,0],["E",5,2,1]] '''
n=len(data)
qA=[0]*n;qB=[0]*n
headA=0;tailA=0
headB=0;tailB=0
curtime=0 ;i=0 ;sum=0
while i<n or headA!=tailA or headB!=tailB:
if i < n and data[i][1] <=curtime:
k=data[i][3]
if ______ :
qA[tailA]=i
tailA+=1
else:
qB[tailB]=i
tailB+=1
_______
elif :
if headA!=tailA:
p=qA[headA]
headA+=1
else:
p=qB[headB]
headB+=1
____________
curtime+=data[p][2]
else:
curtime=data[i][1]
print("平均等待时间为:",sum/n)
(3)加框处代码错误,请改正。______ :
【答案】 ①. 4 ②. k==1或 k!=0 ③. i+=1 ④. sum+=curtime-data[p][1] ⑤. headA!=tailA or headB!=tailB
【解析】
【详解】本题主要考查Python程序的综合应用。
①由题意可知,图中待加工货物A、B、C、D、E的加工顺序应为A-C-B-E-D。A、C、B、E的等待时长分别为0、0、2、1,则D开始的时间是8,送达时间是4,因此等待时长是4。
②已送达货物按照是否加急分别排队,先到达先入队,每次加工都优先处理加急货物队列,k=data[i][3],即k标记是否加急,qA队列处理加急货物,故此处判断k是否为1,故填k==1或 k!=0。
③此处对应if分支处理完,i递增1,继续取下一个货物入队进行判断,故填i+=1。
④elif执行完,会有出队的情况,因此需要更新总的等待时间sum,即将出队货物的等待时间curtime-data[p][1]累加到变量sum中(curtime是当前时间,data[p][1]是改货物送达时间),故填sum+=curtime-data[p][1]。
相关试卷
这是一份浙江省杭州地区含周边重点中学2023-2024学年高二上学期期中联考技术试题(Word版附解析),共13页。试卷主要包含了考试结束后,只需上交答题卷等内容,欢迎下载使用。
这是一份浙江省杭州及周边重点中学2023届高三信息技术下学期3月联考卷(Word版附解析),共13页。试卷主要包含了选择题,非选择题等内容,欢迎下载使用。
这是一份浙江省杭州市“六县九校”联盟2022-2023学年高二上学期信息技术期中联考试卷(Word版附解析),共11页。试卷主要包含了选择题,非选择题等内容,欢迎下载使用。