内容正文:
余姚中学2024学年第二学期高一期中技术选考试卷
第一部分:信息技术(共50分)
考生须知:
本试题卷分两部分,第一部分信息技术,第二部分通用技术,信息4页,通用5页。满分100分,考试时间90分钟。
考生答题前,务必将自己的姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸上。
选择题的答案须用2B铅笔将答题纸上对应题目的答案标号涂黑,如要改动,须将原填涂处用橡皮擦净。非选择题的答案须用黑色字迹的签字笔或钢笔写在答题纸上相应区域内,作图时可先使用2B铅笔,确定后须用黑色字迹的签字笔或钢笔描黑,答案写在本试题卷上无效。
一、选择题(本大题共14小题,每小题2.5分,共35分。在每小题给出的四个选项中,只有一个符合题目要求)
1. 下列关于数据的说法,不正确的是( )
A. 数据的表现形式只能是数字
B. 可以通过网络爬虫、传感器等方式自动采集数据
C. 计算机数据的管理经历了人工管理、文件管理、数据库管理三个阶段
D. 对数据进行加密可以提高数据的安全性
2. 下列关于编码的说法,正确的是( )
A. 计算机中的汉字也是采用二进制进行编码的
B. 模拟信号是以离散的、不连续的物理量形式存在的
C. 将模拟声音数字化需要经过采样、量化、编码三个过程,该过程为数模转换
D. 对某段声音进行数字化,量化值的范围是0-256,则量化位数最少是8 位
3. 已知n是一个6位二进制数1■11■1,其中有两位数字模糊不清。下列数中,可能与它相等是( )
A. 49D B. 64D C. 2DH D. 3CH
4. 某音频的采样、量化过程如图所示,下列说法正确的是( )
A. 图中音频的量化位数为8位 B. 该图呈现了“数模转换”的过程
C. 相邻采样点的间隔越大,声音保真度越高 D. 在图中的量化精度下,M、N点的量化值相同
5. 下列关于人工智能中联结主义的说法,正确的是( )
A. 强调符号的推理和运算 B. 专注于知识的精确编码和存储
C. 模仿人类大脑中神经元之间的交互 D. 关注智能体与环境之间的交互和反馈
6. 下列关于大数据的说法,正确的是( )
A. 分析数据时更注重事物的因果关系
B. 大数据要分析的是全体数据,而不是抽样数据
C. 数据产生的速度快,但处理的速度慢
D. 大数据蕴含的价值巨大,价值密度高
7. 某算法的部分流程图如图所示,执行这部分后,下列说法不正确的是( )
A. a值为9
B. b的值为17
C. 循环条件b<=15?共判断4次
D. 当第3次判断循环条件b<=15?时,b的值为9
8. 下列Python表达式中,其值最大的是( )
A. 9/2**3 B. abs(int(-2.3))
C. 7%2//2+3 D. len(str(1001))
9. 在Python中,下列能作为变量名的是( )
A. a/b B. 2two C. a_b D. for
10. 下列python表达式的值为True的是( )
A. "8">"18" or 9>10 B. {1:"a",2:"b"}[1]=="b"
C int("20"+"24")< 48 D. 3 in ["3",[2,3]]
11. 列表a=[1,2,3,4,5,6,7,8,9,0],则a[3::-2]的结果为( )
A [3,1] B. [3,5,7,9] C. [4,6,8,0] D. [4,2]
12. 有如下Python程序段:
# 输入3个整数分别存储到变量a、b、c中,代码略
if a > b and a > c:
maxn = a
elif b > a and b > c:
maxn = b
elif c > a and c > b:
maxn = c
print("a,b,c的最大值为:", maxn)
执行该程序段,输入下列4组测试数据,无法正确输出a、b、c的最大值的是( )
A. 10,20,30 B. 20,30,10 C. 30,10,10 D. 10,10,10
13. 下面python循环体执行的次数与其他不同的是( )
A.
i=0
while i<=10:
print(i)
i=i+1
B
i=10
while i>0:
print(i)
i=i-1
C.
for i in range(10):
print(i)
D.
for i in range(10,0,-1):
print(i)
A. A B. B C. C D. D
14. 计算两数的最小公倍数算法如下:
a=int(input("请输入第一个数:"))
b=int(input("请输入第二个数:"))
k=2
Lcd=1
while a!=1 or b!=1:
if a%k==0 or b%k==0:
if:
a=a//k
if:
b=b//k
else:
print("最小公倍数为:",Lcd)
方框中的代码由以下四部分组成:
①Lcd=Lcd*k ②k=k+1 ③b%k==0 ④a%k==0
加框处代码正确的填入顺序为( )
A. ①②③④ B. ④③①② C. ③④①② D. ④③②①
二、非选择题(本大题共2小题,其中第15小题7分,第16小题8分,共15分)
15. 小王编写了“字符串缩写”程序,实现如下功能:
①输入一串由英文字母和数字组成的字符串,
②如果字符串有连续字符构成的升序段(后面字符的ASCII值比前面的字符的ASCII值大1),则把升序段缩写成由第一个字符加上“-”和最后一个字符组成的新字符段,
③例如:字符串为“abcdf12345becomexy”,则缩写成“a-df1-5becomex-y”。
程序运行时,输入一串字符,输出缩写的字符串,程序运行效果如下图所示:
(1)实现上述功能的程序如下,请在程序划线处填入合适的代码。
s=input("请输入字符串s:")
①________
flag=False
result=""
for i in range(0,k-1):
if②____:
result=result+s[i]+"-"
flag=True
elif ord(s[i])!=ord(s[i+1])-1:
result=result+s[i]
③____
print("缩写后的字符串为:",result)
划线处①、②、③处请填上合适的代码。
(2)若删除加框处的代码,输入字符串为“abc1234df”,则缩写后的字符串为:____________
16. 2021年12月2日是个特殊的日期,如果用“20211202”的形式表示日期,可以发现这个日期从左往右读和从右往左读完全相同,称之为“回文日期”,小明编写了如下python程序,运行效果如下图所示:
(1)判断某一年是否为闰年(能被4整除但不能被100整除,或能被400整除的年份),如下的leap函数,请在划线处填上合适的代码。
def leap(y):
if________:
return True
else:
return False
(2)定义hui函数,功能是构建“回文日期”,请在划线处填入合适的代码。
def hui(y):
rerult="";t=str(y)
month=t[3]+t[2]
day=t[1]+t[0]
if①____:
days["02"]+=1
if 1<=int(month)<=12 and 1<=int(day)<=days[month]:
result=t+"-"+month+"-"+day
return②________
(3)找出指定日期范围内的回文日期,代码如下,请在划线处填入合适的代码。
data0=input("请输入起始日期(如:2020-01-01):")
data1=input("请输入终止日期(如:2021-01-01):")
st=int(data0[0:4])
ed=int(data1[0:4])
num=0
days={"01":31,"02":28,"03":31,"04":30,"05":31,"06":30,"07":31,"08":31,"09":30,"10":31,"11":30,"12":31}
for year in range(st,ed+1):
newyear=hui(year)
if data0<=newyear<=data1:
________________
print("第"+str(num)+"个回文日期:"+newyear)
days["02"]=28#2月天数改回28
if num==0:
print("没有找到回文日期!")
第1页/共1页
学科网(北京)股份有限公司
$$
余姚中学2024学年第二学期高一期中技术选考试卷
第一部分:信息技术(共50分)
考生须知:
本试题卷分两部分,第一部分信息技术,第二部分通用技术,信息4页,通用5页。满分100分,考试时间90分钟。
考生答题前,务必将自己的姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸上。
选择题的答案须用2B铅笔将答题纸上对应题目的答案标号涂黑,如要改动,须将原填涂处用橡皮擦净。非选择题的答案须用黑色字迹的签字笔或钢笔写在答题纸上相应区域内,作图时可先使用2B铅笔,确定后须用黑色字迹的签字笔或钢笔描黑,答案写在本试题卷上无效。
一、选择题(本大题共14小题,每小题2.5分,共35分。在每小题给出的四个选项中,只有一个符合题目要求)
1. 下列关于数据的说法,不正确的是( )
A. 数据的表现形式只能是数字
B. 可以通过网络爬虫、传感器等方式自动采集数据
C. 计算机数据的管理经历了人工管理、文件管理、数据库管理三个阶段
D. 对数据进行加密可以提高数据的安全性
【答案】A
【解析】
【详解】本题考查数据相关内容。数据的表现形式多样化,可以是文字、数字、声音、图像等,A选项错误;可以采用网络爬虫、传感器等方式自动采集数据,B选项正确;计算机数据的管理经历了人工管理、文件管理、数据库管理三个阶段,正确;数据加密可以提高数据安全性,D选项正确。故本题答案是A选项。
2. 下列关于编码的说法,正确的是( )
A. 计算机中的汉字也是采用二进制进行编码的
B. 模拟信号是以离散的、不连续的物理量形式存在的
C. 将模拟声音数字化需要经过采样、量化、编码三个过程,该过程为数模转换
D. 对某段声音进行数字化,量化值的范围是0-256,则量化位数最少是8 位
【答案】A
【解析】
【详解】本题考查数字化相关内容。计算机中的数据均采用二进制编码,A选项正确;模拟信号是指随时间变化的连续信号,可以采用连续的值来表示信号的强度、频率、相位等特征,B选项错误;声音信号的数字化需要三个步骤:采样、量化和编码, 把声音模拟信号转换成数字信号的过程称为模/数转换,C选项错误;量化值的范围是0~256,则量化位数最少是9位,D选项错误;故本题答案是A选项。
3. 已知n是一个6位二进制数1■11■1,其中有两位数字模糊不清。下列数中,可能与它相等的是( )
A. 49D B. 64D C. 2DH D. 3CH
【答案】C
【解析】
【详解】本题考查二进制相关内容。二进制每位取值范围是:0、1。故该6位二进制可能为:101101(对应十进制:45D,十六进制:2DH)、101111(对应十进制:47D,十六进制:2FH)、111101(对应十进制:61D,十六进制:3DH)、111111(对应十进制:63D,十六进制:3FH)。故本题答案是C选项。
4. 某音频的采样、量化过程如图所示,下列说法正确的是( )
A. 图中音频的量化位数为8位 B. 该图呈现了“数模转换”的过程
C. 相邻采样点的间隔越大,声音保真度越高 D. 在图中的量化精度下,M、N点的量化值相同
【答案】D
【解析】
【详解】本题考查的是编码。A错误,量化值范围为0-7,量化位数只需要3位。 B错误,该图实际上呈现的是“模数转换”的过程,即将模拟音频信号转换为数字音频信号的过程。这个过程包括采样和量化两个步骤。 C错误,相邻采样点的间隔决定了采样的频率。采样频率越高(即相邻采样点的间隔越小), 能够捕获的音频信号细节就越多,声音的保真度也就越高。 D正确,在图中,M,N都在5-6的量化区间内,故量化值都为5。故选D
5. 下列关于人工智能中联结主义说法,正确的是( )
A. 强调符号的推理和运算 B. 专注于知识的精确编码和存储
C. 模仿人类大脑中神经元之间的交互 D. 关注智能体与环境之间的交互和反馈
【答案】C
【解析】
【详解】本题考查人工智能。A选项错误,强调符号的推理和运算是符号主义;B选项错误,专注于知识的精确编码和存储是符号主义;C选项正确,联结主义模仿人类大脑中神经元之间的交互;D选项错误,关注智能体与环境之间的交互和反馈是行为主义。故答案为:C。
6. 下列关于大数据的说法,正确的是( )
A. 分析数据时更注重事物的因果关系
B. 大数据要分析是全体数据,而不是抽样数据
C. 数据产生的速度快,但处理的速度慢
D. 大数据蕴含的价值巨大,价值密度高
【答案】B
【解析】
【详解】本题考查的是大数据相关知识。大数据不再强调对事物因果关系的探求,而是更加注重它们的相关性,选项A说法错误;大数据要分析的是全体数据,而不是抽样数据,选项B说法正确;数据产生的速度快,处理的速度也快,选项C说法错误;数据的特征:体量大,速度快,数据类型多,价值密度低,选项D说法错误,故本题应选B。
7. 某算法的部分流程图如图所示,执行这部分后,下列说法不正确的是( )
A. a的值为9
B. b的值为17
C. 循环条件b<=15?共判断4次
D. 当第3次判断循环条件b<=15?时,b的值为9
【答案】C
【解析】
【详解】本题考查算法流程图相关内容。分析流程图可知,循环体内,a值每次递增2,即3、5、7、9...,b的值随a的变化而变化(b=2*a-1),b的值为:5、9、13、17...。当b的值为17时,循环条件不满足,结束循环。此时,a的值为9,b的值为17,A、B选项正确。对于循环条件,当b=0时,第一次执行,当b=17时,最后一次执行,共执行了5次,选项C错误。第三次判断循环条件时,b的值为9,D选项正确。故本题答案是C选项。
8. 下列Python表达式中,其值最大的是( )
A. 9/2**3 B. abs(int(-2.3))
C. 7%2//2+3 D. len(str(1001))
【答案】D
【解析】
【详解】本题考查 Python 表达式的计算。A 选项,先计算指数运算,再进行除法运算。在 Python 中,2**3 表示 23=8,9/2**3 即 9/8 = 1.125。 B 选项,int(-2.3) 会直接截断小数部分,结果为 -2,abs(int(-2.3)) 即取 -2 的绝对值,结果为 2。 C 选项,根据运算符优先级,先计算取余运算 7%2,结果为 1,再进行整除运算 1//2,结果为 0,最后加上 3,7%2//2 + 3 的结果为 3。 D 选项,str(1001) 把整数 1001 转换为字符串 "1001",len(str(1001)) 即求字符串 "1001" 的长度,结果为 4。 因此,本题选择 D 选项。
9. 在Python中,下列能作为变量名的是( )
A. a/b B. 2two C. a_b D. for
【答案】C
【解析】
【详解】本题考查Python变量相关内容。变量的命名要符合标识符规定,即:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。A选项, 有特殊符号‘/’,错误;B选项,数字开头,错误;C选项,符合标识符规定,正确;D选项,for为关键字,错误。故本题答案是C选项。
10. 下列python表达式的值为True的是( )
A. "8">"18" or 9>10 B. {1:"a",2:"b"}[1]=="b"
C int("20"+"24")< 48 D. 3 in ["3",[2,3]]
【答案】A
【解析】
【详解】本题考查python表达式的逻辑判断。A 选项正确,在 Python 中,字符串比较是从第一个字符开始比较其 ASCII 码值,'8' 的 ASCII 码值大于 '1',所以 "8">"18" 为 True,9>10 为 False,根据逻辑或运算规则,True or False 结果为 True。 B 选项错误,字典 {1:"a", 2:"b"} 中,键 1 对应的值是 "a",而不是 "b",所以 {1:"a", 2:"b"}[1]=="b" 为 False。 C 选项错误,"20"+"24" 是字符串拼接操作,结果为 "2024",int ("2024") 将字符串转换为整数得到 2024,2024<48 显然为 False。 D 选项错误,列表 ["3", [2, 3]] 中的元素是字符串 "3" 和列表 [2, 3],3 并不是该列表的直接元素,所以 3 in ["3", [2, 3]] 为 False。 因此,本题选择 A 选项。
11. 列表a=[1,2,3,4,5,6,7,8,9,0],则a[3::-2]的结果为( )
A. [3,1] B. [3,5,7,9] C. [4,6,8,0] D. [4,2]
【答案】D
【解析】
【详解】本题考查 Python 列表切片操作。a[3:: -2] 切片操作从索引 3 开始,以步长为 -2 倒序取元素,所以依次取到索引 3 的元素 4 和索引 1 的元素 2,结果为 [4, 2]。 因此,本题选择 D 选项。
12. 有如下Python程序段:
# 输入3个整数分别存储到变量a、b、c中,代码略
if a > b and a > c:
maxn = a
elif b > a and b > c:
maxn = b
elif c > a and c > b:
maxn = c
print("a,b,c最大值为:", maxn)
执行该程序段,输入下列4组测试数据,无法正确输出a、b、c的最大值的是( )
A. 10,20,30 B. 20,30,10 C. 30,10,10 D. 10,10,10
【答案】D
【解析】
【详解】本题考查的是Python程序调试。阅读程序,可知当a、b、c三个数相等的时候,三个判断条件都不满足,找不到最大值,故本题应选D。
13. 下面python循环体执行的次数与其他不同的是( )
A.
i=0
while i<=10:
print(i)
i=i+1
B.
i=10
while i>0:
print(i)
i=i-1
C.
for i in range(10):
print(i)
D.
for i in range(10,0,-1):
print(i)
A. A B. B C. C D. D
【答案】A
【解析】
【详解】本题考查循环结构的程序实现。A选项正确,i初值为0,循环条件为,i<=10,循环体中,i=i+1;循环结束时i为11;因此循环体执行次数为11次。B选项,i初值为10,循环条件为,i>0,循环体内,i=i-1;循环结束时i为0,因此循环体执行次数为10次。C选项,range(10)初值为0,终值为10(不包含),步长为1,因此循环体执行10次。D选项,range(10,0,-1)初值为10,终值为0(不包含),步长为-1,因此循环体执行10次。因此本题选择A。
14. 计算两数的最小公倍数算法如下:
a=int(input("请输入第一个数:"))
b=int(input("请输入第二个数:"))
k=2
Lcd=1
while a!=1 or b!=1:
if a%k==0 or b%k==0:
if:
a=a//k
if:
b=b//k
else:
print("最小公倍数为:",Lcd)
方框中的代码由以下四部分组成:
①Lcd=Lcd*k ②k=k+1 ③b%k==0 ④a%k==0
加框处代码正确的填入顺序为( )
A. ①②③④ B. ④③①② C. ③④①② D. ④③②①
【答案】B
【解析】
【详解】本题考查python程序设计。该算法的核心思想是通过不断用从 2 开始的数k去尝试整除a和b,如果能整除就将其除掉并累乘到最小公倍数Lcd中,直到a和b都变为 1。对于 (1) 处,当a能被k整除时,需要将a更新为a除以k的商,所以此处应填a%k==0,即④。对于 (2) 处,当b能被k整除时,需要将b更新为b除以k的商,所以此处应填b%k==0,即③。对于 (3) 处,当a或b能被k整除时,说明k是a或b的一个质因数,需要将k累乘到最小公倍数Lcd中,所以此处应填Lcd=Lcd∗k,即①。对于 (4) 处,当a和b都不能被k整除时,需要将k的值加 1,继续尝试下一个数,所以此处应填k=k+1,即②。因此,加框处代码正确的填入顺序为④③①②,本题选择 B 选项。
二、非选择题(本大题共2小题,其中第15小题7分,第16小题8分,共15分)
15. 小王编写了“字符串缩写”程序,实现如下功能:
①输入一串由英文字母和数字组成的字符串,
②如果字符串有连续字符构成的升序段(后面字符的ASCII值比前面的字符的ASCII值大1),则把升序段缩写成由第一个字符加上“-”和最后一个字符组成的新字符段,
③例如:字符串为“abcdf12345becomexy”,则缩写成“a-df1-5becomex-y”。
程序运行时,输入一串字符,输出缩写的字符串,程序运行效果如下图所示:
(1)实现上述功能的程序如下,请在程序划线处填入合适的代码。
s=input("请输入字符串s:")
①________
flag=False
result=""
for i in range(0,k-1):
if②____:
result=result+s[i]+"-"
flag=True
elif ord(s[i])!=ord(s[i+1])-1:
result=result+s[i]
③____
print("缩写后的字符串为:",result)
划线处①、②、③处请填上合适代码。
(2)若删除加框处的代码,输入字符串为“abc1234df”,则缩写后的字符串为:____________
【答案】 ①. k=len(s) ②. not flag and ord(s[i])+1==ord(s[i+1]) ③. flag=False ④. a-c1-4d
【解析】
【详解】本题考查字符串处理。
(1) ① 处:程序中 k 用于表示字符串 s 的长度,以便后续循环遍历,故填 k = len(s)。 ② 处:判断是否为连续字符构成的升序段的开始,即后面字符的 ASCII 值比前面字符大 1 且 flag 为 False(表示不是在已有升序段中),故填not flag and ord(s[i])+1==ord(s[i+1])。 ③ 处:当不满足升序段条件时,将 flag 设为 False,以便下次正确判断新的升序段,故填 flag = False。
(2)若删除加框处代码, 原代码通过 result += s[i+1] 添加最后一个字符。若删除,输入“abc1234df”时,最终字符 f 未被添加,结果变为 a-c1-4d。
16. 2021年12月2日是个特殊的日期,如果用“20211202”的形式表示日期,可以发现这个日期从左往右读和从右往左读完全相同,称之为“回文日期”,小明编写了如下python程序,运行效果如下图所示:
(1)判断某一年是否为闰年(能被4整除但不能被100整除,或能被400整除的年份),如下的leap函数,请在划线处填上合适的代码。
def leap(y):
if________:
return True
else:
return False
(2)定义hui函数,功能是构建“回文日期”,请在划线处填入合适的代码。
def hui(y):
rerult="";t=str(y)
month=t[3]+t[2]
day=t[1]+t[0]
if①____:
days["02"]+=1
if 1<=int(month)<=12 and 1<=int(day)<=days[month]:
result=t+"-"+month+"-"+day
return②________
(3)找出指定日期范围内的回文日期,代码如下,请在划线处填入合适的代码。
data0=input("请输入起始日期(如:2020-01-01):")
data1=input("请输入终止日期(如:2021-01-01):")
st=int(data0[0:4])
ed=int(data1[0:4])
num=0
days={"01":31,"02":28,"03":31,"04":30,"05":31,"06":30,"07":31,"08":31,"09":30,"10":31,"11":30,"12":31}
for year in range(st,ed+1):
newyear=hui(year)
if data0<=newyear<=data1:
________________
print("第"+str(num)+"个回文日期:"+newyear)
days["02"]=28#2月天数改回28
if num==0:
print("没有找到回文日期!")
【答案】 ①. y%4==0 and y%100!=0 or y%400==0 ②. leap(y)或leap(y)==True ③. result ④. num+=1或num=num+1
【解析】
【详解】本题考查python程序设计。
(1)判断闰年的条件是能被 4 整除但不能被 100 整除,或能被 400 整除,故代码为 y % 4 == 0 and y % 100 != 0 or y % 400 == 0。
(2)① 处,当是闰年时,2 月有 29 天,需将 days["02"] 加 1,即判断 year 是否为闰年,填 leap(y)或leap(y)==True;② 处,函数需返回构建的回文日期字符串,填 result。
(3)当找到符合条件的回文日期时,计数器 num 加 1,填 num += 1。
第1页/共1页
学科网(北京)股份有限公司
$$