浙江省杭州市浙江大学附属中学2025-2026学年高一上学期12月月考技术试题-高中信息技术
试卷更新日期:2026-01-04 类型:月考试卷
一、选择题(本大题16小题,每小题3分,共48分。在每小题给出的四个选项中,只有一个是符合题目要求,不选、多选、错选均不得分)
-
1. 十进制数29转换为二进制数是( )A、11011 B、11101 C、11110 D、101112. 下列关于字符编码的描述,正确的是( )A、字符"A"的ASCII码值比"a"的ASCI码值大32 B、根据GB2312编码,"浙大附中"这4个汉字共占8bit C、已知小写字母"i"的ASCI码是49H,则小写字母"j"的ASCII码是50H D、汉字的输入码有多种,常用的输入码有拼音码、五笔字形码等3. 下列关于数制的描述,正确的是( )A、在16进制数4ADH中,4的权值是163 B、用5位二进制可以表示的最大十进制数是32 C、若二进制数1010110,去掉末位数0,则新数101011是原数的1/2 D、十进制数30转换为十六进制数是ID4. 班级选举班干部:如果候选人得票超过半数则当选,否则需要进行第二轮投票。这种根据条件选择不同执行路径的情境对应哪种程序结构( )A、顺序结构 B、分支结构 C、循环结构 D、数据结构5. 浙大附中高一年级1班有48名同学,如果用二进制给1班的每位同学编号,至少需要几位二进制( )A、4 B、5 C、6 D、76. 下列Python变量名合法的是( )A、_3cin B、cin&3 C、3cin D、cin-37. 下列表达式中,值为True的是( )A、not(3>2 and 4<5) B、"abc"<"ab2" C、2*3+len("0123")==100**0.5 D、18%8+3>22//48. 已知字符串s="python_v3.9",则下面说法正确的是( )A、len(s)的值为9 B、s[1:len(s):2]的值为"yhnv." C、s[-1:-5]的值为"9.3v" D、"on" in s[:5]9. 已知a=-2,b=15/4,则表达式round(b,1)+abs(a)的值是( )A、5.75 B、175 C、5.7 D、5.810. 将某次比赛最后得分用字典存储:dict={"第 1 名":50,"第 2 名":48,"第 3 名":47,"第 4 名":45,"第5名":44,"第6名":42 }。现需要查询第3名成绩,下列表达式正确的是 ( )A、dict{2} B、dict[2] C、dict{"第3名" } D、dict["第3名"]11. 某学校篮球馆的使用规则是:下午4:00-5:00对高一学生开放,5:00-6:00对高二学生开放,6:00后闭馆清洁。设t为当前时间(使用24小时制,如16.5表示下午4:30),下列Python代码中能正确描述这一情景的是( )
A.
if t>=18:
print("闭馆清洁")
elif t>=17:
print("高二学生使用")
else:
print("高一学生使用")
B.
if 16<=t<17:
print("高一学生使用")
elif 17<=t<18:
print("高二学生使用")
else:
print("闭馆清洁")
C.
if t<17:
print("高一学生使用")
elif t<18:
print("高二学生使用")
else:
print("闭馆清洁")
D.
if 16<=t<17:
print("高一学生使用")
elif 17<=t<18:
print("高二学生使用")
elif t>=18:
print("闭馆清洁")
A、A B、B C、C D、D12. 某算法的部分流程图如图所示。当输入x的值是10100时,该算法的输出结果是( )
A、5 B、12 C、13 D、2013. 某Python程序如下:n=int(input("请输入一个整数:"))
sum=0
while n != 0:
sum=sum+n%10
n=n//10
print(sum)
程序运行后,输入n的值为321,输出的结果是( )
A、3 B、5 C、6 D、914. 有Python程序代码如下:listl=[7,3,2,9,8,1,4]
m1=m2=list1[0]
for i in range(1,len(list1)):
if m1< list1[i]:
m1=list1[i];tl=i
elif m2 > list1[i]:
m2=list1[i]; t2=i
print(tl,t2)
执行上面程序,变量t1、t2输出的结果是( )
A、9 1 B、1 9 C、3 5 D、5 315. 有如下 Python 程序段:a=[9,11,2,0,-4,8,-3,5]
f=[0]*8
i=0
while a[i]>0 and i<len(a):
f[i]=1
i+=1
程序运行后, 列表 f 的值是( )
A、[1,1,1,0,0,0,0,0] B、[1,1,1,0,0,1,0,1] C、[1,1,1,1,0,1,0,1] D、[1,1,1,1,0,0,0,0]16. 某python程序如下:a=[1,0,2,4]
s=k=0
for i in range(4):
a[i]+=k
s+=a[i]
k=s
print(s)
该程序运行后,s的值为( )
A、16 B、21 C、14 D、7二、非选择题(本大题共6小题,第17题4分,18题4分,19题4分,20题4分,21题9分,22题12分,第23题15分,共52分)
-
17. 运行如下程序,输出的结果是
s=0
for i in range(1,11,2):
s=s+i
print(s)
18. 运行如下程序,输出的结果是s,i=1,1
while i < 8:
if i%3 != 0:
s*=i
i+=1
print(s)
19. 运行如下程序,输出的结果是lst=[1,2,3,4,5]
for i in range(len(lst)):
lst[i]=lst[i]*2
print(lst[4])
20. 运行如下程序,输出的结果是s="beauty!"
result=""
for i in range(len(s)):
if i % 2 == 0:
result=result+s[i]
else:
result=s[i]+result
print(result)
21. 以下程序实现功能:从输入的字符串中,寻找ASCI码最小的字符,并输出该字符的内码(二进制)。s=input()
minc=s[0]
for i ins[l::]:
if ①:
minc=i
print("ASCII码值最小的字符是:"+minc)
n= ② #将该字符的ASCI码值赋值给n
res="
while n > 0:
res=str(n%2)+res
③
print("ASCII码值最小的字符"+minc+"的二进制内码是"+res)
22. 下面的程序能提取字符串中的数字字符转换成整数(连续的数字字符串转换成一个整数),并将这些整数求和后输出,请填空。s="abl2cd34ef56"
res=0
①
while i < len(s):
if '0' <= s[i] <= '9':
num=0
while i < len(s) and '0' <= s[i] <= '9':
num= ②
i+=1
③
else:
④
print(res)
23. 某校生物兴趣小组记录校园内一周(6天)的植物观察情况。每天用1个字母表示观察到的主要植物类型:'F':开花植物(基础分3分)
'L':落叶植物(基础分2分)
'G':常绿植物(基础分1分)
'O':未观察或其它(基础分0分)
一周6天的观察记录为一个6个字符的字符串,例如:"FFLGOF"。小组希望分析观察记录的质量。
分析规则:
基础分计算:根据每天的观察类型计算基础分。
连续观察奖励:连续观察同类型植物有额外加分。从连续的第2天开始,每天额外加1分。
观察多样性奖励:一周内,每出现一种不同的植物类型('F'、'L、'G'、'O'),奖励2分。
请回答下列问题:
(1)对于观察记录"FFLGOF",总分为分。
(2)编写程序,输入一个长度为6的字符串(仅包含T'、'L'、'G'、'O'),计算并输出总分。
请在划线处填入合适的代码。
record=input("请输入6天观察记录(F/L/G/O):")
#使用字典存储基础分
base_score={'F':3,'L':2,'G':1,'O':0}
score=0
prev_char=" #前一天观察类型
count=1 #当前连续天数
types=" #记录出现过的植物类型
for i in range(len(record)):
ch=record[i]
# 基础分
score+= #①
# 连续奖励判断
if ch == prev_char:
+=1 #②
if count > 1:
score+=1
else:
count= #③
prev_char=ch
#记录植物类型
found=False
for j in range(len(types)):
if types[j] == ch:
found=True
break
if not found:
types=types+ch
#计算多样性奖励
d_count=0
for k in range(len(types)):
d_count+=1
disty=d_count*2
score+= #④
# 输出结果
print("总得分:",score)