浙教版(2019)必修1《第三章 算法的程序?qū)崿F(xiàn)》2022年單元測(cè)試卷(6)
發(fā)布:2024/4/20 14:35:0
一、選擇題
-
1.已知字典dict1={1:2,2:(1,2),(1,2):'b','b':'b1','b1':'b2'},要得到字典中的值'b',下列方法可行的是( ?。?/h2>
組卷:7引用:6難度:0.4 -
2.某班級(jí)學(xué)習(xí)小組成員的分組情況以及學(xué)員成績(jī)分別用Python存儲(chǔ)在students和scores中。若students={“第一組”:[“小紅”,“小明”,“小張”],“第二組”:[“小黃”,“小霞”,“小斌”],“第三組”:[“小藍(lán)”,“小華”,“小誠(chéng)”]},scores=[{“小紅”:90,“小明”:80,“小張”:75},{“小黃”:86.“小霞”:70,“小斌”:89},{“小藍(lán)”67,“小華”:90,“小誠(chéng)”:77}],則要訪問(wèn)第一組第2位學(xué)員姓名以及小明學(xué)習(xí)成績(jī)的表達(dá)式為( ?。?/h2>
組卷:4引用:5難度:0.5 -
3.在Python中,向m={“a“:1,“b“:2,“d“:4}中添加鍵值對(duì)“c“:3應(yīng)該使用下列哪個(gè)語(yǔ)句( ?。?/h2>
組卷:1引用:2難度:0.5 -
4.已知 x=“蘋(píng)果,50“,y=[“蘋(píng)果“,50],z={“蘋(píng)果“:50},下列 python 表達(dá)式的值為 True,正確的是( )
組卷:0引用:4難度:0.5
二、解答題(共4小題,滿分0分)
-
13.小明編寫(xiě)Python程序,實(shí)現(xiàn)對(duì)某次評(píng)價(jià)報(bào)名序號(hào)的檢測(cè)并輸出該考生的評(píng)價(jià)類(lèi)別+科類(lèi)類(lèi)別。報(bào)名序號(hào)的編寫(xiě)方法是:由10位數(shù)字組成,畢業(yè)年份(4位)+評(píng)價(jià)類(lèi)別(1位)+科類(lèi)代碼(1位)+順序代碼(4位)。評(píng)價(jià)類(lèi)別:1普通、2 單項(xiàng);科類(lèi)類(lèi)別:3 藝術(shù)類(lèi)、4 體育類(lèi)、5綜合類(lèi)。
例如:輸入報(bào)名序號(hào)“2022150001”,輸出“普通綜合類(lèi)”
(1)與加框處代碼功能相同的是
(單選,填字母:A.s=dic[ticket[-6:-4]]/B.s=dic[ticket[-6:-5]])
(2)實(shí)現(xiàn)查詢功能的Python程序如下,請(qǐng)?jiān)跈M線處填入合適的代碼
while True:
ticket=①
num=0
for i in ticket:
if i>=“0“and i<=“9“:
num=num+1
If len(ticket)!=10:
print(“輸入長(zhǎng)度不符合要求“)
elif ②:
print(“輸入存在非數(shù)字字符“)
else:
break
dic={“13“:“普通藝術(shù)類(lèi)“,“14“:“普通體育類(lèi)“,“15“:“普通綜合類(lèi)“,“23“:“單項(xiàng)藝術(shù)類(lèi)“,“24“:“單項(xiàng)體育類(lèi)“,“25“:“單項(xiàng)綜合類(lèi)“}
s=dic[ticket[4:6]]
print(“該考生的考試科類(lèi)為:“,s)組卷:2引用:2難度:0.3 -
14.在計(jì)算機(jī)進(jìn)行加密或解密過(guò)程中,經(jīng)常會(huì)對(duì)字符串進(jìn)行移位等變換操作。某字符串的變換規(guī)則描述如下:①輸入的字符為十六進(jìn)制數(shù)(英文字母大寫(xiě),確保輸入的個(gè)數(shù)為 3 的倍數(shù)),如 4AC ②字符串中的每個(gè)字符轉(zhuǎn)成四位二進(jìn)制,按序拼接,如 010010101100 ③二進(jìn)制字符串每 4 位進(jìn)行前后倒置(即4位數(shù)左右倒置)操作,如 001001010011 ④將倒置后的字符串每 3 位轉(zhuǎn)換成 1 位十進(jìn)制,按序拼接后輸出該十進(jìn)制串。運(yùn)行結(jié)果如下圖所示:
根據(jù)該規(guī)則編寫(xiě)的程序如下,請(qǐng)回答以下問(wèn)題:
(1)程序中加框處代碼有誤,請(qǐng)改正
(2)請(qǐng)?jiān)谙聶M線處補(bǔ)充完整程序
Hex={“0“:“0000“,“1“:“0001“,“2“:“0010“,“3“:“0011“,“4“:“0100“,“5“:“0101“,“6“:“0110“,“7“:“0111“,“8“:“1000“,“9“:“1001“,“A“:“1010“,“B“:“1011“,“C“:“1100“,“D“:“1101“,“E“:“1110“,“F“:“1111“}
sch=input(“請(qǐng)輸入一個(gè)十六進(jìn)制數(shù)(字母大寫(xiě)):“)
th=““
for k in sch:
if“0“<=k<=“9“or“A“<=k<=“F“:#若 k 為數(shù)字字符或大寫(xiě)字母
①
ts=““
for i in range(0,②
tob=““
tmp=0
for i in range(len(ts)):#二進(jìn)制串轉(zhuǎn)十進(jìn)制
tmp=tmp*2+int(ts[i])#累乘相加轉(zhuǎn)換成十進(jìn)制
if :#每 3 個(gè)字符為一組進(jìn)行轉(zhuǎn)換后的拼接
tob=tob+str(tmp)
tmp=0
print(“變換后的字符串為:“,tob)組卷:0引用:2難度:0.4