浙江省余姚名校2023-2024学年高二上学期第一次质量检测信息技术试题(Word版含答案)

资源下载
  1. 二一教育资源

浙江省余姚名校2023-2024学年高二上学期第一次质量检测信息技术试题(Word版含答案)

资源简介

2023 学年
余姚中学 质量检测高二技术选考试卷 第一学期
第一部分:信息技术(共 50 分)
一、选择题(本大题共 12 小题, 每小题 2 分,共 24 分。在每小题给出的四个选项中, 只有一个符 合题目要求)
1.下列关于数据、信息与知识的说法,正确的是
A. 数据是对信息加工后获取到的
B. 知识表现为一种卓越的判断力
C. 传感器的普及加速了数据的传输与处理
D. 信息是用来消除随机不确定性的东西
2. 下列关于人工智能的说法,不正确的是
A. ChatGPT 是使用海量数据训练出来的实现“人机对话”系统,这属于符号主义人工智能 B. 在购物时智能客服和人工客服一起合作来回答顾客的问题, 这是混合增强智能的一种应用
C. 家用扫地机器人可以自动完成清扫工作,说明人工智能可以改善人类的生活
D. 人工智能技术的发展提高社会生产力、促进经济发展,但不能解决所有问题 3. 杭州亚运会吉祥物组合“江南忆”如图所示,这是一副未
经压缩的 1100*1024 像素的 BMP 图像文件,其存储容量
约为 1.07MB,则该图像每个像素色彩编码的位数为
A.24 B.16
C.8 D.4
4. 下列关于数据与大数据的说法, 不正确的是
A .大数据中各种结构化、半结构化和非结构化的数据共存
B .大数据不必追求数据的精确性,不必保证每个数据都准确无误
C .大数据不一定强调事物的因果关系,而是更注重他们的相关性
D .数据量大的一定是大数据, 因为大数据的数据体量大
5. 定义如下函数:
deff(k):
ifk<=3:
print(k)
return
for i in range(1,4):
f(k-i)
return
1 / 7
执行语句f(6),则f(3)被调用的次数为
A.1次 B.2次 C.3次 D.4次
6. 有如下Python程序段:
a=[27,5,25,36,78]
f=[False]*5
i=0
while i<4 and not f[i]:
for j in range(4,i,- 1):
if a[j]a[j],a[j- 1]=a[j- 1],a[j]
f[i]=True
i+=1
执行该程序段后,数组f中值为True的元素个数是
A.1 B.2 C.3 D.4
7.数组a已有9个数据, 分别存储于 a[0]~a[8],需在第j个位置(1≤j≤9)插入数据k。利用Python 语言编写代码,模拟数据插入过程,可选代码如下:
①a[i]=k ②a[i- 1]=k ③a[i+1]=a[i] ④a[i]=a[i- 1]
⑤for i in range(j,9) ⑥for i in range(8,j-2,- 1)
划线处所需代码依次为
A. ⑥③① B. ⑤③② C. ⑥④① D. ⑤③①
8. 下列有关迭代算法和递归算法的描述,不正确的是
A.在使用递归算法时,必须有一个明确的递归结束条件,称为递归出口
B.一般来说,迭代算法效率较低,而递归算法效率较高
C.递归中一定有迭代,但迭代中不一定有递归
D.通常情况下,迭代算法和递归算法可以相互转换
9. 有如下程序段:
def cal(n):
if n <= 1:
return 1
if n % 2 == 0:
return 2*cal(n- 1)
2 / 7
return 1+cal(n- 1)
执行语句 k=cal(5),则 k 的值为
A. 6 B. 7 C. 10 D. 11
10. 若某算法的总执行次数 T(N)=T(N/2)+1(N 为大于 2 的正整数) ,另 T(1)=1 。则该算法的时间 复杂度为( )
A. O(N) B. O(log2N) C. O(Nlog2N) D. O(N2)
11.有如下程序段,则该程序段的时间复杂度为( )
a = [[0 for i in range(n+1)] for j in range(n+1)]
a[0][0]=1
for i in range(1,n+1):
a[i][0]=1
for j in range(1,i+1)
a[i][j] = a[i- 1][j- 1]+a[i- 1][j]
A. O(log2N) B. O(N) C. O(Nlog2N) D. O(N2)
12.有如下 Python 程序:
import random
s = input()
k = random.randint(1,len(s)- 1)
i = 0
while k > 0 and i < len(s)- 1:
if s[i] > s[i+1]:
k -= 1
s = s[:i]+s[i+1:]
if i > 0:
i -= 1
else:
i += 1
if k > 0:
s = s[:len(s)-k]
若输入的 s 值为”8561324”,则执行该程序,输出 s 的值不可能为
A.51324 B. 124 C. 132 D. 1324
二、非选择题(本大题共 3 小题, 其中第 13 题 6 分, 第 14 题 10 分, 第 15 题 10 分, 共 26 分。)
13.有n(n>=3)级台阶,从底端向上爬到顶端, 每次只能爬2级或者3级台阶, 求从底端爬到顶端
的方案数。
(1)当n=5时,方案数为 。(2分)
(2)用迭代法计算爬n级台阶的方案数,python程序如下:
3 / 7
n=int(input())
f0,f1,f2=1,0,1
for i in range(3,n+1):
________
f0,f1,f2=f1,f2,f3
print("爬n级台阶的方案数为",f3)
则划线处的代码为 (2分) 。该段代码使用了 (填:递归或迭代)算法。(2分) 14.分组冒泡排序。分别对数组a的奇数和偶数位置的元素进行冒泡排序,即采用“跳跃式冒泡” 的方法, 每次跳跃的步长为2,将数组分成2个子序列, 分别对这2个子序列进行排序。例如, 对数 组a=[6,3,5,4,1,2,8,7]进行分组跳跃式升序冒泡排序,排序后的数组a=[1,2,5,3,6,4,8,7]。
(1) 对 数 组 a=[4,5,2,9,6,7,10,3,8,1] 进 行 分 组 跳 跃 式 升 序 冒 泡 排 序 , 则 排 序 后 的 数 组
a= 。
(2) 实现上述功能的Python程序如下,请在划线处填入合适的代码。
import random
n=8
a=[random.randint(1,9) for i in range(n)]
for i in range(0,n, ① ):
for j in range( ② ):
if a[j]a[j],a[j-2]=a[j-2],a[j]
(3)将分组跳跃式冒泡排序推广到每次跳跃的步长为m的情形,例如对数组a=[6,3,5,4,1,2,8,7]进
行分组跳跃式升序冒泡排序,当m=3时,排序后的数组a=[4,1,2,6,3,5,6,7]。
相关代码如下,请在划线处填入合适的代码。
import random
m=int(input(“请输入步长m: ”))
n=8
a=[random.randint(1,9) for i in range(n)]
print(“排序前”,a)
for i in range( ① ):
for j in range( ② ):
if a[j]a[j],a[j-m]=a[j-m],a[j]
15.大部分社交软件都有好友推荐的功能,当用户A和用户B的共同好友数量超过阀值p时,由系 统向用户A推荐用户B。其中共同好友判定方法为:用户A和用户B不是好友,用户C分别是用户 A和用户B的好友, 则共同好友数量加1。编写Python程序, 实现好友推荐功能。运行程序, 首先
4 / 7
从文件中读取用户 id 及好友列表后,处理后显示用户之间的关系; 再输入推荐目标用户id和阈 值p;最后显示向目标用户推荐的好友列表。
第15题图
(1)根据如图所示数据, 若输入推荐目标用户 id 为“1”,输入阈值为“4”,则推荐好友为:

(2)主程序, 读取"数据.txt"文件,进行处理后显示用户关系二维表,再输入推荐目标用户id和 阈值 p,显示向目标用户推荐的好友列表,请在划线处填入合适的代码。
n = 10
sj = [];zj = [];tj= []
#按行读取"数据.txt"文件,每次读一行文字存入字符串变量 line 中
f=open("数据.txt")
line=f.readline() # 读取标题行
line=f.readline()
while line:
sj.append(line.split(" ")) # 将字符串以" "为间隔分割成多个字符串组成的列表
line=f.readline() #读取下一行
zj = zhengli(sj)
# 显示各用户之间关系二维表,代码略
# 输入推荐目标用户 id 和阈值 p,显示向目标用户推荐的好友列表
id = int(input("请输入推荐目标用户 id:"))
p = int(input("请输入阈值 p:"))
① #调用函数进行好友推荐
if len(tj) != 0:
5 / 7
t = 0
print("推荐好友为:",end = " ")
while t < len(tj):
print(tj[t],end = " ")
t = t + 1
else:
print("没有推荐好友")
(3)编写整理数据函数zhengli,根据好友列表,生产关系二维表, 请在划线处填入合适的代码。
def zhengli(sj):
r = [[0 for i in range(n)]for j in range(n)]
for i in range(n):
for j in sj [i][1:]:
r[i][int(j)- 1] = 1

return r
(4)编写函数 fenxi,根据输入推荐目标用户 id 和阈值 p,显示向目标用户推荐的好友列表, 请在划线处填入合适的代码。
def fenxi(id,p):
res =[]
for i in range(n):
c = 0
for j in range(n):
if i != id- 1 and j != id- 1 and i != j:
if ③ :
c += 1
if ④ :
res.append(i+1)
return res
6 / 7
余姚中学质量检测高二技术选考试卷信息部分答案
一、选择题(每题 2 分,共 24 分)
1 2 3 4 5 6 7 8 9 10 11 12
D A C D D B A B B B D C
二、非选择题(本大题共 3 小题, 第 13 题 6 分,第 14 题 10 分,第 15 小题 10 分, 共 26 分。 )
13. ⑴ 2 (2 分)
⑵ f3=f0+f1 (2 分) 迭代 (2 分)
14. (1) [2,1,4,3,6,5,8,7,10,9] (2 分)
⑵ ① 2 (2 分)
② n-1,i+1,-1 (2 分)
(3) ① 0,n,m (2 分)
② n-1,i+m-1,-1 (2 分)
15. (1) 8 (2 分)
⑵① tj=fenxi(id,p) (2 分)
(3)② r[int(j)-1][i]=1 (2 分)
(4) ③ zj[i][j]==1 and zj[id-1][j]==1 and zj[id-1][i]==0 (2 分)
④ c>p (2 分)
7 / 7

展开更多......

收起↑

资源预览