内容正文:
2025学年第二学期金华市卓越联盟5月阶段性联考
高一年级技术学科试题
考生须知:
1.本卷共10页满分100分,考试时间90分钟。
2.答题前,在答题卷指定区域填写班级、姓名、考场号、座位号及准考证号并填涂相应数字。
3.所有答案必须写在答题纸上,写在试卷上无效。
4.考试结束后,只需上交答题纸。
第一部分 信息技术(共50分)
一、选择题(本大题有12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
阿尔忒弥斯2号是NASA重返月球计划的首次载人飞行任务,于2026年4月1日(美国东部时间)由SLS重型火箭发射,搭载4名宇航员驾乘猎户座(Orion)飞船执行,4月10日安全返回。任务期间飞船实时回传轨道参数、遥感影像、宇航员生理指标等大量数据,宇航员还拍摄了许多照片。阅读下列材料,回答下列小题;
1. 下列关于该任务中有关数据与信息的说法,正确的是( )
A. 这些数据属于大数据,价值密度高
B. 从网络上获取的这次任务相关的内容属于知识
C. 有人质疑相关画面是在摄影棚拍摄,说明信息具有真伪性
D. 拍摄的照片属于信息
2. 关于飞船数据的传输与保存,下列说法正确的是( )
A. 数据在真空中传播,不需要任何载体
B. 数据都以16进制形式保存
C. 为防止数据意外丢失,飞船系统对重要数据进行备份
D. 提高图像分辨率可以增强数据在传输过程中的抗干扰能力
3. 为确保飞船沿预定绕月轨道飞行,需有科学严谨的算法。下列有关算法的描述,不正确的是( )
A. 算法能在有限的计算步骤内完成轨道修正 B. 所有算法都至少要有一个输入
C. 计算得出的轨道是安全可行的 D. 每一步轨道计算都必须确切、无歧义
4. 1972年阿波罗17号任务和今年这次任务,都对地球进行了拍照。两次拍照所得的图像参数分别为800×600像素、256色灰度和4000×3000像素、24位真彩色。若不考虑压缩,两张图像容量之比约为( )
A. 1:25 B. 2:5 C. 1:10 D. 1:75
【答案】1. C 2. C 3. B 4. D
【解析】
【详解】1.本题考查数据与信息基本特征知识。A选项错误,航天大数据数据量大但价值密度偏低;B选项错误,网络获取的任务内容属于信息,并非知识;C选项正确,画面真实性遭质疑,体现信息具备真伪性;D选项错误,照片是承载信息的数据载体,并非信息本身。因此,本题选择C选项。
2.本题考查数据传输与存储基础知识。A选项错误,数据传播必须依托载体;B选项错误,计算机数据以二进制形式存储;C选项正确,数据备份可有效规避数据丢失风险;D选项错误,分辨率和传输抗干扰能力无关联。因此,本题选择C选项。
3.本题考查算法基本特性知识。A选项正确,算法具备有穷性,可有限步骤完成运算;B选项错误,算法可以无输入;C选项正确,算法运算结果具备可行性;D选项正确,算法步骤具有确定性,无歧义。因此,本题选择B选项。
4.本题考查图像存储容量计算知识。图像容量计算公式(不压缩):图像容量 = 水平像素 × 垂直像素 × 颜色深度。256色单像素占8位,24位真彩色单像素占24位,故容量比值为1:75。A、B、C选项比值不符计算结果,D选项正确。因此,本题选择D选项。
5. 算式1011B+19D的运算结果是( )
A. 1EH B. 36D C. 30H D. 11110D
【答案】A
【解析】
【详解】本题考查不同进制数的转换与加法运算。首先明确进制后缀的含义:B表示二进制,D表示十进制,H表示十六进制。先将二进制数1011B转换为十进制,计算可得1011B = 1×2³ + 0×2² + 1×2¹ + 1×2⁰ = 11D,再计算两数的和:11D + 19D = 30D。将30D转换为十六进制,30除以16得商1,余数14,14对应十六进制中的E,因此30D = 1EH,对比选项可知只有1EH符合运算结果。故答案为:A。
6. 已知x="香蕉,30",y=["香蕉",30],z={"香蕉":30},下列python表达式值为True的是( )
A. z[0]==y[0] B. x[3:5]==y[1] C. y[1] in x D. z[y[0]]==30
【答案】D
【解析】
【详解】本题考查Python中字符串、列表、字典的基础操作。第一个选项,z是字典,字典需要通过键访问元素,不存在索引0,表达式报错,结果不是True;第二个选项,x为字符串"香蕉,30",字符索引依次是0对应香、1对应蕉、2对应逗号、3对应3、4对应0,x[3:5]得到的是字符串"30",y[1]是整数30,二者不相等,结果为False;第三个选项,y[1]是整数30,对字符串x做成员运算判断整数是否存在,结果不成立,为False;第四个选项,y[0]是字符串"香蕉",刚好是字典z的键,z[y[0]]的取值就是30,表达式结果为True。故答案为:D。
7. 下列不能表示"x既能被3整除,又能被4整除"的表达式是( )
A. x % 12==0 B. x // 12==0 C. x % 3=0 and x % 4=0 D. x // 12=x / 12
【答案】B
【解析】
【详解】本题考查取模运算、整除运算和条件表达式的含义。x既能被3整除又能被4整除,说明x是12的倍数,即x除以12的余数为0。第一个表达式x%12==0中,%是取模运算,结果为0说明x是12的倍数,可以表示该条件;第二个表达式x//12==0中,//是整除运算,结果为0仅说明x小于12,12、24这类满足条件的数,整除12的结果分别是1、2,不等于0,因此该表达式不能表示题目要求的条件;第三个表达式表示x同时满足被3整除、被4整除,符合题意,可以表示;第四个表达式x整除12的结果等于x除以12的结果,说明x除以12得到整数,即x是12的倍数,可以表示该条件。故答案为:B。
8. 已知某程序流程图如图所示,如果s='2c3d44'',则输出k的值为( )
A. 5 B. 23 C. 49 D. 44
【答案】A
【解析】
【详解】本题考查流程图模拟。字符串s='2c3d44',遍历每个字符:遇到数字累加到t,遇到非数字将t累加到k并重置t。模拟得:'2'→t=2;'c'→k=2,t=0;'3'→t=3;'d'→k=5,t=0;'4'→t=4;'4'→t=44;循环结束,t=44未加入k,故k=5。因此,本题选择A选项。
9. 猎户座飞船执行地月转移任务时,飞船的转移速度需严格控制在安全区间:
1)速度小于10.9km/s(不含):无法脱离地球引力,无法完成地月转移;
2)速度10.9km/s~11.2km/s(不含):正常转移区间,可顺利抵达月球轨道;
3)速度11.2km/s及以上:飞船将脱离地球引力,无法返回。
设飞船速度为v(单位:km/s),状态为s("无法转移"/"正常转移"/"无法返回")。
下列选项能正确描述速度v与状态s之间关系的是( )
A.
s="无法转移"
if v>=10.9:
s="正常转移"
elif v>=11.2:
s="无法返回"
B.
s="无法返回"
if v<10.9:
s="无法转移"
elif v<11.2:
s="正常转移"
C.
s="正常转移"
if v<10.9:
s="无法转移"
else:
s="无法返回"
D.
s="无法转移"
if v>=11.2:
s="无法返回"
if v>=10.9:
s="正常转移"
A. A B. B C. C D. D
【答案】B
【解析】
【详解】本题考查分支条件的逻辑判断能力。首先明确速度和状态的对应规则:当v小于10.9km/s时,s为无法转移;当v大于等于10.9km/s且小于11.2km/s时,s为正常转移;当v大于等于11.2km/s时,s为无法返回。选项A,逻辑顺序错误,v大于等于11.2km/s也满足v大于等于10.9km/s,会先被赋值为正常转移,不会进入后续elif分支,结果错误;选项B,初始将s赋值为无法返回,对应v大于等于11.2km/s的情况,若v小于10.9km/s则将s修改为无法转移,若v在10.9km/s到11.2km/s(不含)之间则将s修改为正常转移,符合规则,结果正确;选项C,将所有v大于等于10.9km/s的情况都归为无法返回,漏掉了正常转移区间,结果错误;选项D,v大于等于11.2km/s先被赋值为无法返回,之后因为满足v大于等于10.9km/s又被修改为正常转移,结果错误。故答案为:B。
10. 有如下python程序,执行该程序后,输出的结果为( )
a=[3,2,4,5,1]
m=a[0]
s=0
for i in range(1,5):
if a[i]<m:
m=a[i]
s+=m
print(s)
A. 3 B. 5 C. 7 D. 15
【答案】C
【解析】
【详解】本题考查的是python循环语句的应用。初始化:列表a=[3,2,4,5,1],m = a[0] = 3,累加和s = 0 ,循环for i in range(1,5),range左闭右开,i依次取1、2、3、4,逐轮判断:
i=1:a[1]=2 < 3,条件成立,更新m=2,s += m → s=0+2=2
i=2:a[2]=4 < 2,条件不成立,s += m → s=2+2=4
i=3:a[3]=5 < 2,条件不成立,s += m → s=4+2=6
i=4:a[4]=1 < 2,条件成立,更新m=1,s += m → s=6+1=7。
故本题应选C。
11. 有如下程序段,输出结果为( )
def f(n):
s=0
while n>0:
s+=n%2
n=n//2
return s
m=0
for i in range(8,10):
m+=f(i)
print(m)
A. 3 B. 5 C. 10001001 D. 10011000
【答案】A
【解析】
【详解】本题考查Python基础程序的阅读与运算能力,涉及自定义函数、循环语句和二进制数位统计的相关知识。自定义函数f(n)的功能是统计十进制数转换为二进制后数字1的个数,原理是循环对n取模2得到当前末位,累加末位值后将n整除2去掉已处理的末位,最终返回累加结果也就是二进制中1的总个数。主程序中for循环遍历range(8,10),遵循Python左闭右开规则,i依次取8和9,计算得f(8)=1,因为8的二进制是1000,只包含1个1;f(9)=2,因为9的二进制是1001,包含2个1;初始m为0,累加后得到m=1+2=3。故答案为:A。
12. 有如下python程序,执行该程序后,a的值可能是( )
import random
a=[]
for i in range(8):
a.append(random.randint(1,9)) #在列表后添加一个值
for i in range(len(a)):
if i%2==a[i]%2:
a[i]+=1
A. [8,9,4,5,4,7,2,5] B. [5,8,8,7,1,9,1,2] C. [3,6,1,10,9,4,5,8] D. [5,6,9,0,5,8,3,4]
【答案】C
【解析】
【详解】本题考查随机数与条件累加。程序生成8个1-9随机数,然后若索引与值奇偶相同则值加1。反向验证:每个最终值要么是原值(奇偶不同),要么是原值+1(奇偶相同且原值≤8)。选项C中,位置3值为10,只能由原值9加1得到,且9%2=1与索引3%2=1相同,符合;其余位置均符合奇偶不同,原值在1-9内。其他选项均有矛盾。因此,本题选择C选项。
二、非选择题(本大题共3小题,其中第13小题8分,第14小题8分,第15小题10分,共26分)
13. 某同学设计了一个python程序,其基本功能是将字符串中的小写字母转换成大写字母,其它字符保持不变。
(1)程序代码如下,请在划线处填上合适的代码。
def change(t):
if "a" <= t <= "z":
t=①___
return t
s=input("输入字符串:")
n=②___
ans=""
for i in range(n):
c=③___
ans=ans+c
print("输出:",ans)
(2)如果输入字符串为“Python123”,则输出结果为________。
【答案】(1) ①. ①chr(ord(t)-32) ②. ②len(s) ③. ③change(s[i])
(2)PYTHON123
【解析】
【详解】本题考查字符串遍历与字符处理,通过判断字符是否在小写字母范围内,将其转换为大写,其他字符保持不变。
(1)①处,当字符是小写字母时,需要将其转换为大写字母。可以使用chr(ord(t)-32),因此该空答案为①chr(ord(t)-32)。②处,循环需要遍历字符串的每个字符,因此需要获取字符串的长度,该空答案为len(s)。③处,在循环中需要依次取出每个字符,并调用change函数进行转换,因此该空答案为change(s[i])。
(2)若输入字符串为“Python123”,则输出结果为“PYTHON123”。因为P已大写不变,y、t、h、o、n分别转为Y、T、H、O、N,数字不变,因此该空答案为PYTHON123。
14. 一同学编写程序实现剪刀石头布游戏,每局游戏进行n次,获胜次数多者赢。单次规则如下:剪刀胜布,石头胜剪刀,布胜石头,相同算平手。运行程序,玩家先输入一局游戏次数,然后依次输入数字,0表示石头,1表示剪刀,2表示布,计算机随机产生数字。n次比赛后输出本局游戏结果。如某次游戏进行的情况如下图所示。
Python程序如下,请在划线处填入合适的代码。
from random import randint
n=int(input("输入一局游戏的次数"))
lst=["石头","剪刀","布"]
①___
for i in range(n):
p=int(input("请输入一个0~2间的数字:"))
c=randint(0,2)
print("第",i+1,"次玩家出",lst[p],"计算机出:",lst[c])
if(p+1)%3==c:
cnt +=1
elif②___:
cnt-=1
if③___>=n-i:
break #退出循环
res=’平局!’
if cnt>0:
res=’玩家赢!’
④___:
res=’计算机赢!’
print(res)
【答案】 ①. ①cnt=0 ②. ②p!=c 或 (p+2)%3==c 或 (c+1)%3 == p ③. ③abs(cnt) ④. ④if cnt<0(或elif cnt<0)
【解析】
【详解】本题考查的是Python循环及选择语句的应用。①处:cnt是存储「玩家胜场数 - 计算机胜场数」的计数变量,后续需要对其做增减操作,必须在循环前初始化,初始无胜败,因此赋值为0。②处:题目规则下,玩家赢的条件已经给出为(p+1)%3 == c(符合0石头胜1剪刀、1剪刀胜2布、2布胜0石头的规则),那么剩下的条件是计算机赢或不是平局的时候才执行 cnt-=1:满足计算机赢的逻辑,即(c+1)%3 == p或 (p+2)%3==c ,不是平局,即p!=c。③处:该判断是提前退出循环的条件:当胜场差的绝对值已经足够大,无论剩余局次结果如何,最终结果已经确定,推导可得:abs(cnt) >= n-i,因此填abs(cnt)。 ④处:结果判断分支:初始结果为平局,cnt>0时玩家赢,cnt<0时计算机赢,因此补充分支条件elif cnt < 0 或if cnt<0。
15. 某密码为几位数字序列(数字为1~6,允许重复),现要尝试破解它。每次用户输入猜测数字后,用不同的符号组合(●、○、×)来提示,用户可继续猜,直至猜中密码后结束。各符号规则如下:
●:该位置数字与密码位置和数值均匹配;
○:数字在密码中存在但位置不匹配(每个数字仅匹配一次,需先匹配●再匹配○);
×:数字不在密码中。
如正确密码为:[2,2,3,5],如果用户猜[2,5,2,4],提示为:“●○○×”
(1)按题中例子所示,如果输入[4,3,2,2],则输出的提示符号为:________
(2)现编写python程序,请在划线处填入合适的代码。
from random import randint
def judge(cd,g,length):
tishi=['×']*length
flag=[False]*length #标记密码中已被使用的位置
#第一轮:匹配●(位置和数字都正确)
for i in range(length):
if①___:
tishi[i]=’●’
flag[i]=True
#第二轮:匹配○(数字正确但位置错误)
for i in range(length):
if tishi[i]==’●’:
continue #跳过当前数字
for j in range(length):
if g[i]==cd[j] and②___:
tishi[i]=’○’
flag[j]=True
break
return tishi
#====================主程序====================
length=int(input("请输入密码位数")) #输入密码位数
code=[randint(1,6)for_inrange(length)] #随机生成相应位数的密码
③___
c=0
print("===密码破译===",length,"位数字,范围1~6)")
print("请输入",length,"个数字,用逗号分隔,例如:2,3,4,5")
while not success:
user_input=input(f"请输入{length}位猜测数字:")
guess=list(map(int,user_input.split(","))) #将输入的密码转换成列表形式保存
if len(guess)!=length:
print("输入错误!必须输入",length,"个数字")
continue
c+=1
res=④___
print("第",c,"次猜测:",guess,"→提示:",res)
if res==[’●’]*length: #←判断全●
print("恭喜!第",c,"次猜测成功!")
success=True
【答案】(1)×○○○
(2) ①. ①cd[i]==g[i] ②. ②not flag[j] ③. ③success=False ④. ④judge(code,guess,length)
【解析】
【详解】本题考查Python程序设计逻辑与密码匹配规则的应用。
(1)已知正确密码是[2,2,3,5],用户猜测为[4,3,2,2],按照规则先匹配●,所有位置都不满足位置和数值同时匹配,再匹配○:数字4不在密码中,标记为×;数字3存在于密码中但位置不匹配,标记为○;两个2都存在于密码中,位置均不匹配且每个数字可各匹配一次,因此都标记为○,最终提示为×○○○。
(2)①处第一轮匹配位置和数值都正确的情况,判断条件就是密码第i位和猜测第i位相等,因此填cd[i]==g[i];②处匹配○时需要密码j位置未被之前的●或○占用,因此判断条件为not flag[j];③主程序中需要初始化success变量表示是否猜对,初始状态未猜对,因此填success=False;④此处需要调用judge函数得到本次猜测的提示结果,参数为密码code、用户猜测guess、密码长度length,因此填judge(code,guess,length)。
第1页/共1页
学科网(北京)股份有限公司
$
2025学年第二学期金华市卓越联盟5月阶段性联考
高一年级技术学科试题
考生须知:
1.本卷共10页满分100分,考试时间90分钟。
2.答题前,在答题卷指定区域填写班级、姓名、考场号、座位号及准考证号并填涂相应数字。
3.所有答案必须写在答题纸上,写在试卷上无效。
4.考试结束后,只需上交答题纸。
第一部分 信息技术(共50分)
一、选择题(本大题有12小题,每小题2分,共24分。每小题列出的四个备选项中只有一个是符合题目要求的,不选、多选、错选均不得分)
阿尔忒弥斯2号是NASA重返月球计划的首次载人飞行任务,于2026年4月1日(美国东部时间)由SLS重型火箭发射,搭载4名宇航员驾乘猎户座(Orion)飞船执行,4月10日安全返回。任务期间飞船实时回传轨道参数、遥感影像、宇航员生理指标等大量数据,宇航员还拍摄了许多照片。阅读下列材料,回答下列小题;
1. 下列关于该任务中有关数据与信息的说法,正确的是( )
A. 这些数据属于大数据,价值密度高
B. 从网络上获取的这次任务相关的内容属于知识
C. 有人质疑相关画面是在摄影棚拍摄,说明信息具有真伪性
D. 拍摄的照片属于信息
2. 关于飞船数据的传输与保存,下列说法正确的是( )
A. 数据在真空中传播,不需要任何载体
B. 数据都以16进制形式保存
C. 为防止数据意外丢失,飞船系统对重要数据进行备份
D. 提高图像分辨率可以增强数据在传输过程中的抗干扰能力
3. 为确保飞船沿预定绕月轨道飞行,需有科学严谨的算法。下列有关算法的描述,不正确的是( )
A. 算法能在有限的计算步骤内完成轨道修正 B. 所有算法都至少要有一个输入
C. 计算得出的轨道是安全可行的 D. 每一步轨道计算都必须确切、无歧义
4. 1972年阿波罗17号任务和今年这次任务,都对地球进行了拍照。两次拍照所得的图像参数分别为800×600像素、256色灰度和4000×3000像素、24位真彩色。若不考虑压缩,两张图像容量之比约为( )
A. 1:25 B. 2:5 C. 1:10 D. 1:75
5. 算式1011B+19D的运算结果是( )
A. 1EH B. 36D C. 30H D. 11110D
6. 已知x="香蕉,30",y=["香蕉",30],z={"香蕉":30},下列python表达式值为True的是( )
A. z[0]==y[0] B. x[3:5]==y[1] C. y[1] in x D. z[y[0]]==30
7. 下列不能表示"x既能被3整除,又能被4整除"的表达式是( )
A. x % 12==0 B. x // 12==0 C. x % 3=0 and x % 4=0 D. x // 12=x / 12
8. 已知某程序流程图如图所示,如果s='2c3d44'',则输出k的值为( )
A. 5 B. 23 C. 49 D. 44
9. 猎户座飞船执行地月转移任务时,飞船的转移速度需严格控制在安全区间:
1)速度小于10.9km/s(不含):无法脱离地球引力,无法完成地月转移;
2)速度10.9km/s~11.2km/s(不含):正常转移区间,可顺利抵达月球轨道;
3)速度11.2km/s及以上:飞船将脱离地球引力,无法返回。
设飞船速度为v(单位:km/s),状态为s("无法转移"/"正常转移"/"无法返回")。
下列选项能正确描述速度v与状态s之间关系的是( )
A.
s="无法转移"
if v>=10.9:
s="正常转移"
elif v>=11.2:
s="无法返回"
B.
s="无法返回"
if v<10.9:
s="无法转移"
elif v<11.2:
s="正常转移"
C.
s="正常转移"
if v<10.9:
s="无法转移"
else:
s="无法返回"
D.
s="无法转移"
if v>=11.2:
s="无法返回"
if v>=10.9:
s="正常转移"
A. A B. B C. C D. D
10. 有如下python程序,执行该程序后,输出的结果为( )
a=[3,2,4,5,1]
m=a[0]
s=0
for i in range(1,5):
if a[i]<m:
m=a[i]
s+=m
print(s)
A. 3 B. 5 C. 7 D. 15
11. 有如下程序段,输出结果为( )
def f(n):
s=0
while n>0:
s+=n%2
n=n//2
return s
m=0
for i in range(8,10):
m+=f(i)
print(m)
A. 3 B. 5 C. 10001001 D. 10011000
12. 有如下python程序,执行该程序后,a的值可能是( )
import random
a=[]
for i in range(8):
a.append(random.randint(1,9)) #在列表后添加一个值
for i in range(len(a)):
if i%2==a[i]%2:
a[i]+=1
A. [8,9,4,5,4,7,2,5] B. [5,8,8,7,1,9,1,2] C. [3,6,1,10,9,4,5,8] D. [5,6,9,0,5,8,3,4]
二、非选择题(本大题共3小题,其中第13小题8分,第14小题8分,第15小题10分,共26分)
13. 某同学设计了一个python程序,其基本功能是将字符串中的小写字母转换成大写字母,其它字符保持不变。
(1)程序代码如下,请在划线处填上合适的代码。
def change(t):
if "a" <= t <= "z":
t=①___
return t
s=input("输入字符串:")
n=②___
ans=""
for i in range(n):
c=③___
ans=ans+c
print("输出:",ans)
(2)如果输入字符串为“Python123”,则输出结果为________。
14. 一同学编写程序实现剪刀石头布游戏,每局游戏进行n次,获胜次数多者赢。单次规则如下:剪刀胜布,石头胜剪刀,布胜石头,相同算平手。运行程序,玩家先输入一局游戏次数,然后依次输入数字,0表示石头,1表示剪刀,2表示布,计算机随机产生数字。n次比赛后输出本局游戏结果。如某次游戏进行的情况如下图所示。
Python程序如下,请在划线处填入合适的代码。
from random import randint
n=int(input("输入一局游戏的次数"))
lst=["石头","剪刀","布"]
①___
for i in range(n):
p=int(input("请输入一个0~2间的数字:"))
c=randint(0,2)
print("第",i+1,"次玩家出",lst[p],"计算机出:",lst[c])
if(p+1)%3==c:
cnt +=1
elif②___:
cnt-=1
if③___>=n-i:
break #退出循环
res=’平局!’
if cnt>0:
res=’玩家赢!’
④___:
res=’计算机赢!’
print(res)
15. 某密码为几位数字序列(数字为1~6,允许重复),现要尝试破解它。每次用户输入猜测数字后,用不同的符号组合(●、○、×)来提示,用户可继续猜,直至猜中密码后结束。各符号规则如下:
●:该位置数字与密码位置和数值均匹配;
○:数字在密码中存在但位置不匹配(每个数字仅匹配一次,需先匹配●再匹配○);
×:数字不在密码中。
如正确密码为:[2,2,3,5],如果用户猜[2,5,2,4],提示为:“●○○×”
(1)按题中例子所示,如果输入[4,3,2,2],则输出的提示符号为:________
(2)现编写python程序,请在划线处填入合适的代码。
from random import randint
def judge(cd,g,length):
tishi=['×']*length
flag=[False]*length #标记密码中已被使用的位置
#第一轮:匹配●(位置和数字都正确)
for i in range(length):
if①___:
tishi[i]=’●’
flag[i]=True
#第二轮:匹配○(数字正确但位置错误)
for i in range(length):
if tishi[i]==’●’:
continue #跳过当前数字
for j in range(length):
if g[i]==cd[j] and②___:
tishi[i]=’○’
flag[j]=True
break
return tishi
#====================主程序====================
length=int(input("请输入密码位数")) #输入密码位数
code=[randint(1,6)for_inrange(length)] #随机生成相应位数的密码
③___
c=0
print("===密码破译===",length,"位数字,范围1~6)")
print("请输入",length,"个数字,用逗号分隔,例如:2,3,4,5")
while not success:
user_input=input(f"请输入{length}位猜测数字:")
guess=list(map(int,user_input.split(","))) #将输入的密码转换成列表形式保存
if len(guess)!=length:
print("输入错误!必须输入",length,"个数字")
continue
c+=1
res=④___
print("第",c,"次猜测:",guess,"→提示:",res)
if res==[’●’]*length: #←判断全●
print("恭喜!第",c,"次猜测成功!")
success=True
第1页/共1页
学科网(北京)股份有限公司
$