浙江省杭州第二中学2023-2024学年高一下学期期中技术试题-高中信息技术 (解析版)

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

浙江省杭州第二中学2023-2024学年高一下学期期中技术试题-高中信息技术 (解析版)

资源简介

杭州二中日2023学年第二学期高一年级期中考
技术试卷
第一部分 信息技术(共50分)
一、选择题(本大题共12小题,1—4题每小题3分,5—12题每小题2分,共28分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1. 在Python中,想得到3除以7的整数部分,需要用到以下哪个算术运算符号( )
A. + B. / C. // D. %
【答案】C
【解析】
【详解】本题考查的是Python算术符。/表示除,//表示整除,%表示求余。故选C。
2. 以下四个选项中属于字符串类型的是( )
A. thing="面包,矿泉水" B. production=["面包","矿泉水"]
C. record={"面包":4.5, "矿泉水":2} D. price=4.5
【答案】A
【解析】
【详解】本题考查的是数据类型。选项A是字符串类型,选项B是列表,选项C是字典,选项D是整型。故选A。
3. 以下哪个流程图表示了Python中的分支结构( )
A. B. C. D. 以上都不是
【答案】B
【解析】
【详解】本题考查的是流程图及程序结构。选项A是顺序结构,选项B是分支结构,选项C是循环结构。故选B。
4. 下列Python表达式中,其值最大的是( )
A 7//2+2 B. int(-9.3) C. 2**3 D. len("15")
【答案】C
【解析】
【详解】本题考查的是Python表达式。7//2+2=5,int(-9.3)=-9,2**3=8,len("15")=2。故选C。
5. 下列字符串中,最大的是( )
A. "456" B. "45" C. "54" D. "56"
【答案】D
【解析】
【详解】本题考查的是字符串比较。字符串大小比较规则是:两个字符串自左向右逐个字符相比(按ASCII值大小相比较)。"56">"54">"456">"45"。故选D。
6. “如果a,b中任意一个为0,那么y=y+1”,能实现该功能的Python语句是( )
A.if a=0 And b==0 y=y+1 B.if a*b==0: y=y+1 C.if a==0,b=0 y=y+1 D .if a×b==0: y=y+1
A. A B. B C. C D. D
【答案】B
【解析】
【详解】本题考查Python选择结构程序设计相关内容。由“如果a,b中任意一个为0”知,a、b均为0,四个选项中,只有B选项清晰的描述了该结论,故本题答案是B选项。
7. 某算法的部分流程图如右图所示,执行这部分流程,输出的s值为( )
A. 28 B. 162 C. 280 D. 945
【答案】C
【解析】
【详解】本题考查的是流程图识读。阅读流程图可知计算的是s=1*4*7*10=280,故选C。
8. 以下Python程序段执行后,输出结果为( )
m=28
if m%3!=0:
print(m,"不能被3整除")
else:
print(m,"能被3整除")
A. m不能被3整除 B. m能被3整除 C. 28能被3整除 D. 28不能被3整除
【答案】D
【解析】
【详解】本题考查Python程序设计相关内容。m=28,执行m%3,结果为1,不等于0,输出:28不能被3整除。故选D。
9. 有如下Python程序段,执行该程序段后,一共输出列表a中的多少个元素( )
a=[1,2,3,4,5,6,7]
for i in range(5):
print(a[i])
A. 7 B. 5 C. 2 D. 3
【答案】B
【解析】
【详解】本题考查的是Python循环语句。range(start,stop,[step]),start:计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0,1,2,3,4]没有5;step:步长,默认为1。例如:range(0, 5) 等价于 range(0,5,1)。 range(5)生成[0,1,2,3,4共5个序列数,故输出5个元素。选B。
10. 有如下Python程序段,执行该程序段后,输出显示的内容是( )
s=0
for k in range(1,5,2):
if k<=1:
m=1
if k<=2:
m+=2
else:
m+=3
s+=m
print(s)
A. 4 B. 5 C. 9 D. 13
【答案】C
【解析】
【详解】本题考查的是Python循环和分支语句的应用。range(1,5,2)生成1,3序列数。
k=1时,满足k<=1,执行m=1,也满足k<=2,执行m+=2(即m=m+2=3),执行s+=m(即s=s+m=3);
k=3时,不满足k<=1,也不满足k<=2,执行m+=3(即m=3+3=6),执行s+=m(即s=s+m=9)
故选C
11. 有如下Python程序段,可以实现从班级学生中随机抽取五名学生参与班会活动。
名称 含义
random.randint(a,b) 随机生成一个[a,b]范围内的整数
random.random() 随机生成一个[0,1)范围内的实数
random.choice(seq) 从序列seq的元素中随机挑选一个元素
import random#random模块中的常用函数如上表所示
#导入学生名单到列表a中,a=["张*","李*",...,丁*"]
name_list=[] #列表name list存放随机生成的学生名单
for i in range(5):
t=①

a.pop(t) #从列表a中删除已被抽取的学生,避免重复抽取
上述程序段中划线处依次可填入的语句是( )
A. ①random.randint(0,len(a)-1) ②name_list+=a[t] B. ①int(random.random()*len(a)) ②name_list+=a[t]
C. ①random.randint(0,len(a)) ②name_list.append(a[t]) D. ①random.randint(0,len(a)-1) ②name_list.append(a[t])
【答案】D
【解析】
【详解】本题考查的是列表综合应用。列表索引从0开始,故随机数应为0~len(a)-1的整数,列表元素添加用append。故本题应选D。
12. Python在各个编程语言中比较适合新手学习,Python的创始人(龟叔)是( )
A James Gosling B. Guido van Rossum C. Dennis Mac Alistair Ritchie D. Alan Cooper
【答案】B
【解析】
【详解】本题考查的是Python相关知识。Python的创始人为荷兰人吉多·范罗苏姆(Guido van Rossum)。故选B。
二、非选择题(本大题共2小题,其中第13小题12分,第14小题10分,共22分)
turtle常用函数库
turtle.pen size() 设置画笔的粗细
turtle.speed() 设置画笔移动的速度
turtle.color("a","b") 设置画笔颜色(a)和填涂颜色(b)
turtle.begin_fill() 开始填充颜色
turtle.end_fill() 结束填充颜色
turtle.right(degree) 顺时针移动degree度
turtle.left(degree) 逆时针移动degree度
turtle.circle(radius,extent) 根据半径radius绘制extent(默认360)角度的弧形
13. 想象一下,你是一位小小的魔法师,正站在一个神奇的画布前,准备用你的魔法棒(其实是turtle库的画笔)绘制出一个个绚丽多彩的正n多边形。
①____ #导入turtle库
t.pensize(5)
t.speed(10)
t.color("yellow","blue")
n=②____ #输入边数,参考图1显示
d=int(input("请输入边长:""))
t.begin_fill()
for i in range(③____): #设置循环次数
tforward(d)
t.left (④____) #设置n边形每条边的旋转角度
t.end_fill()
(1)在程序中某些数据是可变的,例如程序中的n。为了更灵活地处理数据,可以用变量来存储,以下变量名合法的是( )
A.4st_dhc B.uldj C.s4t#v D.for
(2)你已经知道了基本的绘制步骤,但还有一些细节需要完善。请根据你的魔法知识,在横线处填入合适的代码,让魔法棒按照你的意愿行动吧!!(图1是用户输入界面)
(3)当获取用户的n的值为5,d为60,则绘制出( )
A.黄边蓝底的正五边形 B.黄边蓝底的正六边形 C.蓝边黄底的正五边形 D.蓝边黄底的正六边形
【答案】 ①. import turtle as t ②. int(input("请输入边数:")) ③. n ④. 360/n ⑤. B ⑥. A
【解析】
【详解】本题考查的是Python海龟作图。①处,由后续代码可知,导入turtle库别名为t,故为:import turtle as t;②处,输入边数,由图1显示可知,此处应为:int(input("请输入边数:"));③处,n为边数,故循环要n次,故此处应为n 或 其它等价答案;④处,置n边形每条边的旋转角度,故此处为:360/n;⑤处,变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故选B;⑥处,由t.color("yellow","blue")可知当获取用户的n的值为5,d为60,则绘制出黄边蓝底的正五边形,故选A。
14. 在数学王国里,回文数是一种特殊的数,它们拥有一种神奇的特性:无论是从左往右读还是从右往左读,它们都是相同的。例如数字12321就是一个典型的回文数。现在,我们要编写一个程序,来检测用户输入的数是否为回文数。如果是回文数,我们将使用turtle库来绘制一个半径为50的圆形;如果不是回文数,将绘制一个边长为100的三角形。
(1)若用户输入"23746732",运行程序后绘制出____(圆形/三角形)。
(2)以下程序还未完成,请在横线处填入合适的代码。
#导入turtle库,代码略
turtle.pensize(5)
turtle.speed(50)
#以下代码判断用户输入是否为回文数
m=input("请输入数字:")
n=len(m)
①____ #设置flag初值
for i in range(n//2+1):
if m[i] !=②____:
flag=False
#以下代码根据判断结果绘图
if flag==True:
③____
else:
for j in range(3):
turtle.forward(100)
turtle.left(120)
(3)小明完成程序后,意识到可以通过切片操作来更高效地判断一个整数m是否为回文数。于是他编写了以下程序,下划线处应填写的语句为:____
m=input("请输入数字:")
if : #判断原字符串与反转字符串是否相等
print("该数字一个回文数!")
else:
print("该数字不是一个回文数!")
【答案】 ①. 三角形 ②. flag=True ③. m[n-1-i] ④. turtle.circle(50) ⑤. m==m[::-1]
【解析】
【详解】本题考查的是Python综合应用。
(1)"23746732"不是回文数,故绘制出三角形。
(2)①处,阅读程序可知, flag=False表示不是回文数,有第一个for语句可知,初始应设置为True;②处,回文数是无论从左往右读还是从右往左读,它们都是相同的,即第1个字符与倒数第1个数比较,第2个字符与倒数第2个数比较,依次类推,故此处应为:m[n-1-i];③处,如果是回文数,我们将使用turtle库来绘制一个半径为50的圆形,故此处应为:turtle.circle(50)。
(3)切片操作基本表达式:object[start_index:end_index:step],step:正负数均可,其绝对值大小决定了切取数据时的“步长”,而正负号决定了“切取方向”,正表示“从左往右”取值,负表示“从右往左”取值。start_index:表示起始索引(包含该索引对应值),该参数省略时,表示从对象“端点”开始取值。end_index:表示终止索引(不包含该索引对应值),该参数省略时,表示一直取到数据“端点”。故下划线处应填写:m==m[::-1]。杭州二中日2023学年第二学期高一年级期中考
技术试卷
第一部分 信息技术(共50分)
一、选择题(本大题共12小题,1—4题每小题3分,5—12题每小题2分,共28分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
1. 在Python中,想得到3除以7的整数部分,需要用到以下哪个算术运算符号( )
A. + B. / C. // D. %
2. 以下四个选项中属于字符串类型的是( )
A. thing="面包,矿泉水" B. production=["面包","矿泉水"]
C. record={"面包":4.5, "矿泉水":2} D. price=4.5
3. 以下哪个流程图表示了Python中的分支结构( )
A. B. C. D. 以上都不是
4. 下列Python表达式中,其值最大的是( )
A. 7//2+2 B. int(-9.3) C. 2**3 D. len("15")
5. 下列字符串中,最大的是( )
A. "456" B. "45" C. "54" D. "56"
6. “如果a,b中任意一个为0,那么y=y+1”,能实现该功能的Python语句是( )
A.if a=0 And b==0 y=y+1 B.if a*b==0: y=y+1 C.if a==0,b=0 y=y+1 D .if a×b==0: y=y+1
A. A B. B C. C D. D
7. 某算法的部分流程图如右图所示,执行这部分流程,输出的s值为( )
A. 28 B. 162 C. 280 D. 945
8. 以下Python程序段执行后,输出结果为( )
m=28
if m%3!=0:
print(m,"不能被3整除")
else:
print(m,"能被3整除")
A. m不能被3整除 B. m能被3整除 C. 28能被3整除 D. 28不能被3整除
9. 有如下Python程序段,执行该程序段后,一共输出列表a中的多少个元素( )
a=[1,2,3,4,5,6,7]
for i in range(5):
print(a[i])
A. 7 B. 5 C. 2 D. 3
10. 有如下Python程序段,执行该程序段后,输出显示的内容是( )
s=0
for k in range(1,5,2):
if k<=1:
m=1
if k<=2:
m+=2
else:
m+=3
s+=m
print(s)
A. 4 B. 5 C. 9 D. 13
11. 有如下Python程序段,可以实现从班级学生中随机抽取五名学生参与班会活动。
名称 含义
random.randint(a,b) 随机生成一个[a,b]范围内的整数
random.random() 随机生成一个[0,1)范围内的实数
random.choice(seq) 从序列seq的元素中随机挑选一个元素
import random#random模块中的常用函数如上表所示
#导入学生名单到列表a中,a=["张*","李*",...,丁*"]
name_list=[] #列表name list存放随机生成的学生名单
for i in range(5):
t=①

a.pop(t) #从列表a中删除已被抽取的学生,避免重复抽取
上述程序段中划线处依次可填入的语句是( )
A. ①random.randint(0,len(a)-1) ②name_list+=a[t] B. ①int(random.random()*len(a)) ②name_list+=a[t]
C. ①random.randint(0,len(a)) ②name_list.append(a[t]) D. ①random.randint(0,len(a)-1) ②name_list.append(a[t])
12. Python在各个编程语言中比较适合新手学习,Python的创始人(龟叔)是( )
A. James Gosling B. Guido van Rossum C. Dennis Mac Alistair Ritchie D. Alan Cooper
二、非选择题(本大题共2小题,其中第13小题12分,第14小题10分,共22分)
turtle常用函数库
turtle.pen size() 设置画笔的粗细
turtle.speed() 设置画笔移动速度
turtle.color("a","b") 设置画笔颜色(a)和填涂颜色(b)
turtle.begin_fill() 开始填充颜色
turtle.end_fill() 结束填充颜色
turtle.right(degree) 顺时针移动degree度
turtle.left(degree) 逆时针移动degree度
turtle.circle(radius,extent) 根据半径radius绘制extent(默认360)角度的弧形
13. 想象一下,你是一位小小的魔法师,正站在一个神奇的画布前,准备用你的魔法棒(其实是turtle库的画笔)绘制出一个个绚丽多彩的正n多边形。
①____ #导入turtle库
t.pensize(5)
t.speed(10)
t.color("yellow","blue")
n=②____ #输入边数,参考图1显示
d=int(input("请输入边长:""))
tbegin_fill()
for i in range(③____): #设置循环次数
t.forward(d)
t.left (④____) #设置n边形每条边的旋转角度
t.end_fill()
(1)在程序中某些数据是可变的,例如程序中的n。为了更灵活地处理数据,可以用变量来存储,以下变量名合法的是( )
A.4st_dhc B.uldj C.s4t#v D.for
(2)你已经知道了基本的绘制步骤,但还有一些细节需要完善。请根据你的魔法知识,在横线处填入合适的代码,让魔法棒按照你的意愿行动吧!!(图1是用户输入界面)
(3)当获取用户的n的值为5,d为60,则绘制出( )
A.黄边蓝底的正五边形 B.黄边蓝底的正六边形 C.蓝边黄底的正五边形 D.蓝边黄底的正六边形
14. 在数学王国里,回文数是一种特殊的数,它们拥有一种神奇的特性:无论是从左往右读还是从右往左读,它们都是相同的。例如数字12321就是一个典型的回文数。现在,我们要编写一个程序,来检测用户输入的数是否为回文数。如果是回文数,我们将使用turtle库来绘制一个半径为50的圆形;如果不是回文数,将绘制一个边长为100的三角形。
(1)若用户输入"23746732",运行程序后绘制出____(圆形/三角形)。
(2)以下程序还未完成,请在横线处填入合适的代码。
#导入turtle库,代码略
turtle.pensize(5)
turtle.speed(50)
#以下代码判断用户输入是否为回文数
m=input("请输入数字:")
n=len(m)
①____ #设置flag初值
for i in range(n//2+1):
if m[i] !=②____:
flag=False
#以下代码根据判断结果绘图
if flag==True:
③____
else:
for j in range(3):
turtleforward(100)
turtleleft(120)
(3)小明完成程序后,意识到可以通过切片操作来更高效地判断一个整数m是否为回文数。于是他编写了以下程序,下划线处应填写的语句为:____
m=input("请输入数字:")
if : #判断原字符串与反转字符串是否相等
print("该数字是一个回文数!")
else:
print("该数字不一个回文数!")

展开更多......

收起↑

资源列表