内容正文:
绝密★考试结束前
2024学年第二学期台金七校联盟期中联考
高一年级技术学科试题
命题学校:仙居中学审题学校:路桥中学
考生须知:
1.本卷共8页满分100分,考试时间90分钟。
2.答题前,在答题卷指定区域填写班级、姓名、考场号、座位号及准考证号并填涂相应数字。
3.所有答案必须写在答题纸上,写在试卷上无效。
4.考试结束后,只需上交答题纸。
第一部分信息技术(共50分)
一、选择题(本大题共15小题,每小题2分,共30分,每小题列出的四个备选项中只有一个是符合题目要求的,不选、错选,多选均不得分)
1. 下列关于数据与信息的说法,正确的是( )
A. 数据以二进制方式编码后才能存储在计算机中
B. 大数据技术不能处理非结构化数据
C. 在数据处理过程中不会有新的信息产生
D. 信息的价值因人而异,但信息不会有虚假
2. 下列说法正确的是( )
A. 十进制不能用于信息编码
B. 已知字符“1”的ASCII码值为49D, 由此可知字符“2”的ASC11码值为4AD
C. 某十进制数a除8后余数为1,将a转换为二进制数后末位不一定为1
D. x,y都为正整数,如果x%y的值为3,则x//y!=x/y的值一定为True
3. 下列关于算法及算法的特征的描述,正确的是( )
A. 算法只能使用一种程序语言来实现 B. 自然语言不能用来描述算法
C. 任何算法都必须有输出 D. 算法的处理步骤可以是无限的
4. 下列关于数据安全的说法,不正确的是( )
A. 自然灾害也有可能对数据造成损坏
B. 数据加密有助于提高数据的安全性
C. 数据校验主要是为了保证数据的完整性
D. 数据安全只要做好防护上的安全即可
5. 对某段声音进行数字化,量化值的范围是0~100,则量化位数最少是( )
A 7 B. 8 C. 16 D. 100
6. 下列关于数字化的说法,正确的是( )
A. 水银温度计呈现的温度值是数字信号
B. 拍照搜题获取解析的过程涉及到图像数字化
C. 通过麦克风将声音录入到电脑中属于数模转换
D. 数字化过程中,提高采样频率(不改变其他原有参数),音频保真度将下降
7. 下列表达式值与其他选项不同的是( )
A. max (range (9)) B. int (8.9) C. "2"+4 D. 189%100//10
8. 下列可以作为Python变量名的是( )
A. xxjs@2025 B. False C. 3_list D. Age
9. 已知变量s=["123", "456", "789"],则表达式s[1][1::-1]*2+n[0][1:2]的值是( )
A. "454512" B. "54542" C. "565612" D. "454523"
10. 某算法的部分流程图如图所示,执行这部分流程后,下列说法不正确的是( )
A. 变量a,b的值分别是17,21
B. 交换"b=a+b"和"a=a+5",会影响结果
C. 循环体共执行了4次
D 语句“b<=26?”共执行了5次
11. 有如下Python程序段:
x = int (input ("请输入整数x:"))
if x >15:
y = x*x
elif x <=5:
y =10*x
else:
y=0
要测试所有分支程序代码是否正确,以下测试数据中,最恰当的一组是( )
A. 0,10,-3 B. 16,6,-1 C. -2,15,10 D. 100,5,-100
12. 有如下Python程序段:
a = [8,12,12,5,4,10,4]
k =0
for i in range (1, len (a)):
if a[i] >= a[k]:
k=i
执行该程序段后,k的值为( )
A. 1 B. 2 C. 4 D. 12
13. 有如下Python程序段:
def fun (x):
n = len (a)
while x< n//2:
a[x],a[n-1-x]= a[n-1-x],a[x]
x +=1
return a
a = [12,4,6,23,75,39,17]
fun (0)
执行该程序段后,列表a的值为( )
A. [4,6,12,17,23,39,75] B. [75,39,23,17,12,6,4]
C. [17,39,75,23,6,4,12] D. [17,4,75,23,6,39,12]
14. 在数字串s中寻找连续数字之和为k的子串,若有多个子串符合,则输出第一个子串。例如,s="20250520", k=7, 则符合要求的子串为“025”。实现该功能的部分Python代码如下:
i=0; j=0; sum=0
for j in range (len (s)):
sum += int (s[j])
while sum>k:
c=s[i]
①
i+=1
if sum = =k:
print ("符合要求子串为:", s[i:j+1])
②
划线①②处的语句是( )
A. ① sum = sum-int (c) ②break
B. ① sum = sum+ int (c) ②break
C. ① sum = sum-int (c) ② continue
D. ① sum = sum+ int (c) ②continue
15. 有如下Python程序段,运行该程序段后,列表num中的值可能为( )
from random import randint
num = []
for i in range (0,6):
n = randint (1,10)
num. append (n)
for i in range (1,6):
if i%2==1 and num[i] > num[i-1] :
num[i] num[i-1] = num[i-1], num[i]
else:
num[i]= num[i]-1
A. [4,1,7,4,4,0] B. [5,3,6,4,0,2] C. [11,1,7,5,4,3] D. [9,8,1,1,5,4]
二、非选择题(本大题共2小题,第16题10分,第17题10分)
16. 使用黑白颜色填充方格如图a所示,要求垂直和水平方向相邻方格颜色不同,第1个方格颜色随机生成,方格总数为n*n。编程模拟实现该填充过程,数字0代表黑色,数字1代表白色。编写Python程序实现该功能如下:用户输入4,程序运行后输出数字序列,程序运行界面如图b所示。
(1)若n为3,则第2行填充结果为______(单选,填字母:A.010/B.101/ C. 两者都有可能)。
(2)请在划线处填上合适的代码。
from random import randint
n= int (input ("请输入n: "))
print ("填充结果为:“)
m = randint (0.1)
s=""
for i in range (1,n*n+1):
s = ①___
m =1-m
if ②___;
print (s)
③___
if n%2==0:
④___
17. 任取一个正整数,如果不是回文数,将该数与它的倒序数相加,若其和不是回文数,则重复上述步骤,一直到获得回文数为止。例如:68变成154 (68+86),再变成605 (154+451),最后变成1111 (605+506),而1111是回文数,所以经过3次转化,68变成回文数。于是有数学家提出一个猜想:不论开始是什么正整数,在经过有限次正序数和倒序数相加的步骤后,都会得到一个回文数。
下列程序的功能是输入一个正整数,判断该正整数能否在10次以内转化为回文数。
请输入一个正整数:68
该数经过3次转化成回文数:1111
(1)48是否可以在10次之内转化为回文数?_____ (填“是”或“否”)。
(2)请在划线处填上合适的代码。
def is_hw (num): #判断num是否是回文数
temp= num; flag= False
①___
while temp>0:
total =②___
temp//=10
if total = =num:
③___
return flag
def reverse (n): #得到n的反转数,如n为147则得到741
return (int (str (n)[::-1]))
n = int (input ("请输入一个正整数:“))
c =0
while ④___ and c <10:
n= n + reverse (n)
⑤___
if is_hw (n):
print ("该数经过" + str (c) + "次转化成回文数:" + str (n))
else:
print ("该数在10次内无法转化为回文数!")
第1页/共1页
学科网(北京)股份有限公司
$$
绝密★考试结束前
2024学年第二学期台金七校联盟期中联考
高一年级技术学科试题
命题学校:仙居中学审题学校:路桥中学
考生须知:
1.本卷共8页满分100分,考试时间90分钟。
2.答题前,在答题卷指定区域填写班级、姓名、考场号、座位号及准考证号并填涂相应数字。
3.所有答案必须写在答题纸上,写在试卷上无效。
4.考试结束后,只需上交答题纸。
第一部分信息技术(共50分)
一、选择题(本大题共15小题,每小题2分,共30分,每小题列出的四个备选项中只有一个是符合题目要求的,不选、错选,多选均不得分)
1. 下列关于数据与信息的说法,正确的是( )
A. 数据以二进制方式编码后才能存储在计算机中
B. 大数据技术不能处理非结构化数据
C. 在数据处理过程中不会有新的信息产生
D. 信息的价值因人而异,但信息不会有虚假
【答案】A
【解析】
【详解】本题考查数据与信息的基本概念。A 选项正确:计算机内部采用二进制编码存储和处理数据,无论是数值、文本、图像还是声音,最终都需转换为二进制形式(0 和 1 的序列)才能被存储和处理,这是计算机存储数据的基本方式。 B 选项错误:大数据技术可以处理多种类型的数据,包括结构化数据(如表格数据)、半结构化数据(如 JSON、XML)和非结构化数据(如文本、图像、音频、视频等)。 C 选项错误:在数据处理过程中,通过分析、整合、挖掘等操作,原始数据可以被加工为有意义的信息,甚至产生新的信息。 D 选项错误:信息的价值确实因人而异(如同一数据对不同人可能有不同意义),但信息可能存在虚假或错误(如谣言、错误数据加工后的结论),因此需要对信息的真实性进行验证。因此,本题选择 A 选项。
2. 下列说法正确的是( )
A. 十进制不能用于信息编码
B. 已知字符“1”的ASCII码值为49D, 由此可知字符“2”的ASC11码值为4AD
C. 某十进制数a除8后余数为1,将a转换为二进制数后末位不一定为1
D. x,y都为正整数,如果x%y的值为3,则x//y!=x/y的值一定为True
【答案】D
【解析】
【详解】本题考查的是信息编码。选项A,十进制可以用于信息编码(如邮政编码、身份证号码等),因此错误。 选项B,字符“1”的ASCII码为49(十进制),则“2”的ASCII码应为50(十进制),而非十六进制的4A,因此错误。 选项C,若十进制数a除8余1,即a=8k+1,其二进制末位必定为1(因8是2³,二进制末三位为001),因此错误。 选项D,当x%y=3时,x= y*q +3(q为整数),x//y=q(整除结果),x/y=q + 3/y(浮点数)。由于3/y不为整数,x//y与x/y一定不相等,结果为True,因此正确。故选D。
3. 下列关于算法及算法的特征的描述,正确的是( )
A. 算法只能使用一种程序语言来实现 B. 自然语言不能用来描述算法
C. 任何算法都必须有输出 D. 算法的处理步骤可以是无限的
【答案】C
【解析】
【详解】本题考查的是算法的特征。算法具有如下特征:1、有穷性:算法必须能在执行有限个步骤之后终止;2、确切性:算法的每一步骤必须有确切的定义;3、输入项:一个算法有0个或多个输入;4、输出项:一个算法有一个或多个输出,没有输出的算法是毫无意义的;5、可行性:算法中执行的任何计算步骤都是可以被分解为基本的可执行的操作步,即每个计算步都可以在有限时间内完成(也称之为有效性)。故选C。
4. 下列关于数据安全的说法,不正确的是( )
A. 自然灾害也有可能对数据造成损坏
B. 数据加密有助于提高数据的安全性
C. 数据校验主要是为了保证数据的完整性
D. 数据安全只要做好防护上的安全即可
【答案】D
【解析】
【详解】本题主要考查数据安全的描述。自然灾害也有可能对数据造成损坏;数据加密有助于提高数据的安全性;数据校验主要是为了保证数据的完整性;防护上的安全只是保护数据安全的一方面,故本题选D选项。
5. 对某段声音进行数字化,量化值的范围是0~100,则量化位数最少是( )
A. 7 B. 8 C. 16 D. 100
【答案】A
【解析】
【详解】本题考查的是编码。量化位数表示用多少位二进制数来存储每个采样点的量化值。题目中量化值范围为0~100,共101个可能值。二进制位数为n时,可表示的不同值数量为2n。要使2ⁿ ≥ 101,计算得: 当n=6时,2⁶=64(不足);当n=7时,2⁷=128(足够)。 因此,最少需要7位二进制数。故选A。
6. 下列关于数字化的说法,正确的是( )
A. 水银温度计呈现温度值是数字信号
B. 拍照搜题获取解析的过程涉及到图像数字化
C. 通过麦克风将声音录入到电脑中属于数模转换
D. 数字化过程中,提高采样频率(不改变其他原有参数),音频保真度将下降
【答案】B
【解析】
【详解】本题考查的是数字化。A错误:水银温度计通过连续变化的水银柱显示温度值,属于模拟信号,而数字信号是离散的(如电子屏显示的数字)。B正确:拍照时,摄像头将现实中的图像转换为数字格式(像素点),这一过程属于图像数字化(采样和量化)。C错误:麦克风将声音(模拟信号)录入电脑时需进行模数转换(ADC),而非数模转换(DAC,用于数字转模拟)。D错误:提高采样频率(单位时间内采样次数)能更精确记录信号,提升音频保真度,而非降低。故选B。
7. 下列表达式的值与其他选项不同的是( )
A max (range (9)) B. int (8.9) C. "2"+4 D. 189%100//10
【答案】C
【解析】
【详解】本题考查的是Python表达式。选项A:max(range(9)) ,range(9)生成整数序列0,1,2,...,8,最大值是8。选项B:int(8.9),int()函数对浮点数直接取整,结果为8。选项C:“2”+4 ,字符串“2”和整数4类型不同,无法直接相加,会报类型错误(如Python中TypeError)。选项D:189%100//10,先计算189%100得89,再整除89//10得8。故选C。
8. 下列可以作为Python变量名的是( )
A. xxjs@2025 B. False C. 3_list D. Age
【答案】D
【解析】
【详解】本题考查的是变量名。Python变量名命名规则如下:只能包含字母、数字、下划线,不能有特殊符号(如选项A中的@不合法)。不能以数字开头(如选项C的3_list不合法)。不能是关键字或保留字(如选项B的False是布尔类型关键字,不合法)。区分大小写,Age与age不同,且Age不是关键字,符合规则。故选D。
9. 已知变量s=["123", "456", "789"],则表达式s[1][1::-1]*2+n[0][1:2]的值是( )
A. "454512" B. "54542" C. "565612" D. "454523"
【答案】B
【解析】
【详解】本题考查的是python表达式。s[1][1::-1]:s[1] 是列表第二个元素,即字符串 "456",切片 [1::-1] 表示从索引1开始,逆序取到开头,结果为 "54"(索引1的 '5' 和索引0的 '4')。 "54" * 2 结果为 "5454"。 s[0][1:2]:s[0] 是列表第一个元素 "123"。 切片 [1:2] 取索引1的字符,结果为 "2"。 最终拼接:"5454" + "2" = "54542",对应选项 B。
10. 某算法的部分流程图如图所示,执行这部分流程后,下列说法不正确的是( )
A. 变量a,b的值分别是17,21
B. 交换"b=a+b"和"a=a+5",会影响结果
C. 循环体共执行了4次
D. 语句“b<=26?”共执行了5次
【答案】A
【解析】
【详解】本题考查的是流程图识读。初始a=2,b=0。
b<=26成立,执行b=a+b=2,a=a+5=7;
b<=26成立,执行b=a+b=9,a=a+5=12;
b<=26成立,执行b=a+b=21,a=a+5=17;
b<=26成立,执行b=a+b=38,a=a+5=22;
b<=26不成立,循环结束。
执行这部分流程后,变量a,b的值分别是22,38。故选A。
11. 有如下Python程序段:
x = int (input ("请输入整数x:"))
if x >15:
y = x*x
elif x <=5:
y =10*x
else:
y=0
要测试所有分支程序代码是否正确,以下测试数据中,最恰当的一组是( )
A. 010,-3 B. 16,6,-1 C. -2,15,10 D. 100,5,-100
【答案】B
【解析】
【详解】本题考查的选择语句。测试数据需覆盖所有分支。选项B的三个输入分别对应三个分支,能全面测试代码的正确性。其他选项未覆盖所有分支。故选B。
12. 有如下Python程序段:
a = [8,12,12,5,4,10,4]
k =0
for i in range (1, len (a)):
if a[i] >= a[k]:
k=i
执行该程序段后,k的值为( )
A. 1 B. 2 C. 4 D. 12
【答案】B
【解析】
【详解】本题考查Python 程序设计。通过遍历列表元素,根据条件更新索引k,从而找出列表中最大元素的索引。程序开始时,k = 0,列表a = [8, 12, 12, 5, 4, 10, 4]。循环从i = 1开始,当i = 1时,a[1] = 12,a[k] = a[0] = 8,因为12 >= 8,所以k更新为1。接着当i = 2时,a[2] = 12,a[k] = a[1] = 12,因为12 >= 12,所以k更新为2。之后继续遍历列表,未再出现比a[2]更大的元素,所以最终k的值为2。因此,本题选择 B 选项。
13. 有如下Python程序段:
def fun (x):
n = len (a)
while x< n//2:
a[x],a[n-1-x]= a[n-1-x],a[x]
x +=1
return a
a = [12,4,6,23,75,39,17]
fun (0)
执行该程序段后,列表a的值为( )
A. [4,6,12,17,23,39,75] B. [75,39,23,17,12,6,4]
C. [17,39,75,23,6,4,12] D. [17,4,75,23,6,39,12]
【答案】C
【解析】
【详解】本题考查的是Python循环。初始列表 a = [12,4,6,23,75,39,17],长度为7,n//2 = 3。函数 fun(0) 从 x=0 开始循环。
第一次循环(x=0):交换 a[0] 和 a[6],列表变为 [17,4,6,23,75,39,12],x=1。
第二次循环(x=1):交换 a[1] 和 a[5],列表变为 [17,39,6,23,75,4,12],x=2。
第三次循环(x=2):交换 a[2] 和 a[4],列表变为 [17,39,75,23,6,4,12],x=3 终止循环。
最终列表为选项 C,实现了将前一半元素与对称的后一半元素交换的对称翻转。故选C。
14. 在数字串s中寻找连续数字之和为k的子串,若有多个子串符合,则输出第一个子串。例如,s="20250520", k=7, 则符合要求的子串为“025”。实现该功能的部分Python代码如下:
i=0; j=0; sum=0
for j in range (len (s)):
sum += int (s[j])
while sum>k:
c=s[i]
①
i+=1
if sum = =k:
print ("符合要求的子串为:", s[i:j+1])
②
划线①②处的语句是( )
A. ① sum = sum-int (c) ②break
B. ① sum = sum+ int (c) ②break
C. ① sum = sum-int (c) ② continue
D. ① sum = sum+ int (c) ②continue
【答案】A
【解析】
【详解】本题考查的是Python循环语句。①:当sum > k时,需要缩小窗口左端。c = s[i]获取当前左端字符,之后应减去该字符对应的数值以更新sum,故填入sum = sum - int(c)。②:一旦找到符合条件的子串(即sum == k),需立即终止循环以保证输出第一个结果,因此填入break。故选A。
15. 有如下Python程序段,运行该程序段后,列表num中的值可能为( )
from random import randint
num = []
for i in range (06):
n = randint (1,10)
num. append (n)
for i in range (1,6):
if i%2==1 and num[i] > num[i-1] :
num[i], num[i-1] = num[i-1], num[i]
else:
num[i]= num[i]-1
A. [4,1,7,4,4,0] B. [5,3,6,4,0,2] C. [11,1,7,5,4,3] D. [9,8,1,1,5,4]
【答案】A
【解析】
【详解】本题主要考查Python程序的综合应用。randint(1,10)的范围是1到10包含1和10的自然数。num列表元素赋值后最大值是10。赋值后没有代码对num列表元素值增大的运算,故选项C有11而错误;由if条件可知奇数下标的元素大于前一个元素时两个元素交换,因此奇数下标对应的元素值小于等于前一个元素值,选项B中最后一个元素值2大于0,选项B错误;选项D中下标为3的元素值是1,下标为2的元素值也是1,if条件不成立执行else部分进行自身减1操作。如果减1之后是1,那么之前应该是2。如果是2,if条件就成立,因此选项D错误,故选A。
二、非选择题(本大题共2小题,第16题10分,第17题10分)
16. 使用黑白颜色填充方格如图a所示,要求垂直和水平方向相邻方格颜色不同,第1个方格颜色随机生成,方格总数为n*n。编程模拟实现该填充过程,数字0代表黑色,数字1代表白色。编写Python程序实现该功能如下:用户输入4,程序运行后输出数字序列,程序运行界面如图b所示。
(1)若n为3,则第2行填充结果为______(单选,填字母:A.010/B.101/ C. 两者都有可能)。
(2)请在划线处填上合适的代码。
from random import randint
n= int (input ("请输入n: "))
print ("填充结果为:“)
m = randint (0.1)
s=""
for i in range (1,n*n+1):
s = ①___
m =1-m
if ②___;
print (s)
③___
if n%2==0:
④___
【答案】 ①. C ②. s + str (m) ③. i % n ==0 ④. s = "" ⑤. m =1- m
【解析】
【详解】本题考查的是python循环语句。
(1)题目要求相邻方格颜色不同,且第一个方格颜色随机生成。如果第一个方格为0(黑色),则第二行可能为101。如果第一个方格为1(白色),则第二行可能为010。故选C。
(2)①将当前颜色(0或1)添加到字符串s中,由于m是整数类型,必须转换为字符串类型后添加,故此处应为:s + str (m);②如果是行尾,则输出,当前索引i是n的倍数即是行尾,故此处应为:i % n ==0;③输出一行后,需要将字符串s重置为空,故此处应为:s = ""。③当n为偶数时,执行m =1- m,以确保下一行的第一个方格的颜色与当前行的第一个方格的颜色不相同,故此处应为:m =1- m。
17. 任取一个正整数,如果不是回文数,将该数与它的倒序数相加,若其和不是回文数,则重复上述步骤,一直到获得回文数为止。例如:68变成154 (68+86),再变成605 (154+451),最后变成1111 (605+506),而1111是回文数,所以经过3次转化,68变成回文数。于是有数学家提出一个猜想:不论开始是什么正整数,在经过有限次正序数和倒序数相加的步骤后,都会得到一个回文数。
下列程序的功能是输入一个正整数,判断该正整数能否在10次以内转化为回文数。
请输入一个正整数:68
该数经过3次转化成回文数:1111
(1)48是否可以在10次之内转化为回文数?_____ (填“是”或“否”)。
(2)请在划线处填上合适的代码。
def is_hw (num): #判断num是否是回文数
temp= num; flag= False
①___
while temp>0:
total =②___
temp//=10
if total = =num:
③___
return flag
def reverse (n): #得到n的反转数,如n为147则得到741
return (int (str (n)[::-1]))
n = int (input ("请输入一个正整数:“))
c =0
while ④___ and c <10:
n= n + reverse (n)
⑤___
if is_hw (n):
print ("该数经过" + str (c) + "次转化成回文数:" + str (n))
else:
print ("该数在10次内无法转化为回文数!")
【答案】 ①. 是 ②. total =0 ③. total *10+ temp %10 ④. flag = True ⑤. not is_hw (n) 或is_hw (n) == False ⑥. c +=1或c = c+1
【解析】
【详解】本题考查是python迭代。
(1)48经过2次操作后得到回文数363,因此在10次内可以转化为回文数。答案为是。
(2)①初始化total为0,用于存储反转后的数,故此处应为:total =0;②反转数的核心逻辑:每次将temp的最后一位加到total中,并通过*10实现位数左移,故此处应为:total *10+ temp %10;③果反转后的数total等于原数num,则flag设为True,表示是回文数,故此处应为:flag = True;④当n不是回文数且操作次数c小于10时继续循环,故此处应为:not is_hw (n) 或is_hw (n) == False;⑤每次操作后,操作次数c加1,故此处应为:c +=1或c = c+1。
第1页/共1页
学科网(北京)股份有限公司
$$