版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
2022年12月青少年軟件編程Python等級考試試卷三級真題(含答案和解析)分?jǐn)?shù):100題數(shù):38一、單選題(共25題,共50分)1. 列表L1中全是整數(shù),小明想將其中所有奇數(shù)都增加1,偶數(shù)不變,于是編寫了如下圖所示的代碼。請問,圖中紅線處,代碼應(yīng)該是?(?)A. x||2B. x^2C. x&&2D. x%2標(biāo)準(zhǔn)答案:D試題解析:本題代碼中,forxinL1是在L1列表中循環(huán),每次取出的值x交給if語句進(jìn)行判斷,如果除以2的余數(shù)不等于0,就是奇數(shù),則x+1,若等于0則x值不變。取余數(shù)的運(yùn)算符是%,所以正確答案就是D。2. 小明為了學(xué)習(xí)選擇排序的算法,編寫了下面的代碼。針對代碼中紅色文字所示的一、二、三處,下面說法正確的是?(?)a=[8,4,11,3,9]
count=len(a)
foriinrange(count-1):
mi=i
forjinrange(i+1,count):
ifa[mi]>a[j]:#代碼一
mi=j#代碼二
ifi!=mi:a[mi],a[i]=a[i],a[mi]#代碼三print(a)A. 如果找到更大的元素,則記錄它的索引號。B. 如果找到更小的元素,則記錄它的索引號。C. 在一趟選擇排序后,不管是否找到更小的元素,mi所在元素都得與i所在的元素發(fā)生交換。D. 代碼三所在的行必然要運(yùn)行。標(biāo)準(zhǔn)答案:B3. 小明編寫了一段演示插入排序的代碼,代碼如下。請問紅色“缺失代碼”處,應(yīng)該填寫哪段代碼?(?)a=[8,4,11,3,9]
count=len(a)
foriinrange(1,count):
j=i
b=a[i]
whilej>0andb<a[j-1]:
a[j]=a[j-1]
缺失代碼
a[j]=b
print(a)A. j=j-1B. j=j+1C. j=i+1D. j=i-1標(biāo)準(zhǔn)答案:A試題解析:本題考查學(xué)生對插入排序算法的理解。當(dāng)前位置數(shù)字需要通過循環(huán),逐個與之前位置的數(shù)字進(jìn)行比較,所以正確答案是A,j=j-1,用于下一次循環(huán)時,獲取前一個數(shù)字。4. 在計(jì)算機(jī)中,信息都是采用什么進(jìn)行存儲?(?)A. 二進(jìn)制數(shù)B. 八進(jìn)制數(shù)C. 十進(jìn)制數(shù)D. 十六進(jìn)制數(shù)標(biāo)準(zhǔn)答案:A試題解析:信息的二進(jìn)制存儲。5. 十進(jìn)制數(shù)(100)10,轉(zhuǎn)化為二進(jìn)制數(shù)為(?)2?A. 0010011B. 1010001C. 1100100D. 0101100標(biāo)準(zhǔn)答案:C試題解析:十進(jìn)制與二進(jìn)制轉(zhuǎn)化問題。6. 十六進(jìn)制數(shù)每一位至多可以表示幾位二進(jìn)制位?(?)A. 2B. 3C. 4D. 16標(biāo)準(zhǔn)答案:C試題解析:十六進(jìn)制數(shù)與二進(jìn)制數(shù)的關(guān)系。7. 八進(jìn)制數(shù)(35)8,轉(zhuǎn)化為十進(jìn)制數(shù)為(?)10?A. 100011B. 110001C. 232D. 29標(biāo)準(zhǔn)答案:D試題解析:A是二進(jìn)制數(shù);B是二進(jìn)制數(shù),沒有倒排;C是十進(jìn)制數(shù),展開的權(quán)錯了;D正確。8. 執(zhí)行代碼a=min(3,2,4.3),變量a的值是?(?)A. 3B. 2C. 4.3D. 4標(biāo)準(zhǔn)答案:B試題解析:min(3,2,4.3)中最小值為2,賦值給a9. print(max('python+'))的運(yùn)行結(jié)果是?(?)A. 'p'B. pC. 'y'D. y標(biāo)準(zhǔn)答案:D試題解析:max('python+'),字母中’y’最大,print(‘y’)的結(jié)果為y。10. a=5.12596print(round(a,2))運(yùn)行結(jié)果是?(?)A. 5B. 5.1C. 5.12D. 5.13標(biāo)準(zhǔn)答案:D試題解析:保留2位小數(shù),四舍五入,所以結(jié)果是5.13。11. type([{2.6}])運(yùn)行的結(jié)果是?(?)A. floatB. dictC. TrueD. list標(biāo)準(zhǔn)答案:D試題解析:type([{2.6}])運(yùn)行的結(jié)果是list。12. 執(zhí)行如下代碼a=[1,2,3,4]print(list(enumerate(a)))運(yùn)行結(jié)果是?(?)A. ((0,1),(1,2),(2,3),(3,4))B. [(0,1),(1,2),(2,3),(3,4)]C. [1,2,3,4]D. (1,2,3,4)標(biāo)準(zhǔn)答案:B試題解析:enumerate()函數(shù)用于將一個可遍歷的數(shù)據(jù)對象(如列表、元組或字符串)組合為一個索引序列,同時列出數(shù)據(jù)和數(shù)據(jù)下標(biāo)。13. set('hello')運(yùn)行結(jié)果是?(?)A. ('h','e','l','l','o')B. {'h','e','l','l','o'}C. {'e','h','l','o'}D. ('e','h','l','o')標(biāo)準(zhǔn)答案:C試題解析:集合去重,所以結(jié)果為{'e','h','l','o'}。14. print(sum([5,10,min(7,4,6)]))的運(yùn)行結(jié)果是?(?)A. 22B. 21C. 4D. 19標(biāo)準(zhǔn)答案:D試題解析:先求出min(7,4,6)中最小值4,再進(jìn)行sum(5,10,4)求和,得出19。15. divmod(100,3)的執(zhí)行結(jié)果是?(?)A. (1,33)B. (33,1)C. [33,1]D. [1,33]標(biāo)準(zhǔn)答案:B試題解析:divmod(100,3)的運(yùn)行結(jié)果為(33,1)。16. 下列表達(dá)式結(jié)果是False的是?(?)A. all({})B. all([10])C. all(['1','2','3',''])D. all(['1','2','3'])標(biāo)準(zhǔn)答案:C試題解析:all()函數(shù)用于判斷給定的可迭代參數(shù)iterable中的所有元素是否都為True,如果是返回True,否則返回False。元素除了是0、空、None、False外都算True。17. 將字符串或數(shù)字轉(zhuǎn)換為浮點(diǎn)數(shù)的函數(shù)是?(?)A. chr()B. float()C. int()D. str()標(biāo)準(zhǔn)答案:B試題解析:float()函數(shù)用于將整數(shù)和字符串轉(zhuǎn)換成浮點(diǎn)數(shù)。18. 以下表達(dá)式的值為True是?(?)A. bool(2022)B. bool(0)C. bool()D. bool({})標(biāo)準(zhǔn)答案:A試題解析:bool()函數(shù)用于將給定參數(shù)轉(zhuǎn)換為布爾類型,如果沒有參數(shù),返回False。bool({2022})中間有元素,所以為True。19. 有這樣一段程序:
a=[“香蕉“,”蘋果”,”草莓”,“哈密瓜”]
fs=open(“fruits.csv”,”w”)
fs.write(“,”.join(a)+‘\n’)
fs.close()
該段程序執(zhí)行后,該csv文件中的內(nèi)容是?(?)A. 香蕉蘋果草莓哈密瓜B. 香蕉,蘋果,草莓,哈密瓜C. 香蕉蘋果草莓哈密瓜D. ["香蕉","蘋果","草莓","哈密瓜"]標(biāo)準(zhǔn)答案:B試題解析:open("fruits.csv","w")表示打開CSV文件,進(jìn)行寫入操作("w"表示可覆蓋寫入)。",".join(a)表示將a列表中的元素取出,并用","連接成新的字符串,寫入文件。20. 關(guān)于文件的讀寫操作,下列說法不正確的是?(?)A. read()函數(shù)讀取文件內(nèi)容后,生成的是一個字符串。B. readline()每次只讀取文件中的一行,并返回字符串類型數(shù)據(jù)。C. readlines()函數(shù)每次按行讀取整個文件的內(nèi)容,并返回list類型數(shù)據(jù)。D. 讀取文件內(nèi)容只能用reader()對象。標(biāo)準(zhǔn)答案:D試題解析:文件內(nèi)容的讀取可以視不同情況選擇不同的函數(shù),reader()也是其中之一。21. 關(guān)于下列列表,說法正確的是?(?)
s=[[“佩奇”,“100”,“86”,“85”,“90”],
[“蘇西”,“78”,“88”,“98”,“89”],
[“佩德羅”,“80”,“66”,“80”,“92”]]A. 這是一組二維數(shù)據(jù)B. 這樣的數(shù)據(jù)不能存儲到CSV文件中C. 無法讀取[“佩奇”,“100”,“86”,“85”,“90”]這條數(shù)據(jù)D. 必須手動寫入到CSV文件中標(biāo)準(zhǔn)答案:A試題解析:二維列表的每個元素本身也是列表。可通過循環(huán)讀取元素并寫入CSV文件。22. 有關(guān)于write()函數(shù)的說法正確的是?(?)A. write()函數(shù)只能向文件中寫入一行數(shù)據(jù)B. write()函數(shù)的參數(shù)不是字符串類型C. write()函數(shù)也可以向文件中寫入多行數(shù)據(jù)D. write()函數(shù)和writelines()函數(shù)完全相同標(biāo)準(zhǔn)答案:C試題解析:write()函數(shù)可向文件中寫入一行或多行數(shù)據(jù)。其參數(shù)必須為字符串,而writelines()函數(shù)既可以傳入字符串也可以傳入一個字符序列,并寫入文件。23. 對于在csv文件中追加數(shù)據(jù),下列說法正確的是?(?)A. 只能以單行方式追加數(shù)據(jù)B. 只能以多行方式追加數(shù)據(jù)C. 多行數(shù)據(jù)追加的函數(shù)是writerow()D. 以單行方式或多行方式追加都可以標(biāo)準(zhǔn)答案:D試題解析:在CSV中追加數(shù)據(jù)可以用writerow()函數(shù)進(jìn)行一行一行寫入,也可以用writerows()函數(shù)進(jìn)行多行寫入數(shù)據(jù)。24. Python的異常處理try....except...else...finally機(jī)制中,以下哪部分語句一定能得到全部執(zhí)行?(?)A. try子句B. except子句C. else子句D. finally子句標(biāo)準(zhǔn)答案:D試題解析:25. Python的異常處理機(jī)制中,以下表述哪項(xiàng)是錯誤的?(?)A. 如果當(dāng)try中的語句執(zhí)行時發(fā)生異常,Python就執(zhí)行匹配該異常的except子句。B. 如果當(dāng)try中的語句執(zhí)行時發(fā)生異常,try代碼塊的剩余語句將不會被執(zhí)行。C. 如果在try子句執(zhí)行時沒有發(fā)生異常,Python將執(zhí)行else語句后的語句。D. 異常處理結(jié)構(gòu)能夠發(fā)現(xiàn)程序段中的語法錯誤。標(biāo)準(zhǔn)答案:D試題解析:二、判斷題(共10題,共20分)26. 二進(jìn)制數(shù)轉(zhuǎn)化為十進(jìn)制數(shù)的方法是:按權(quán)展開、逐項(xiàng)相加,如:(101)2=(10)10。(?)正確錯誤標(biāo)準(zhǔn)答案:錯誤試題解析:末位的權(quán)應(yīng)為0。27. 語句print(round(2.785,2))運(yùn)行后的結(jié)果是2.79。(?)正確錯誤標(biāo)準(zhǔn)答案:正確試題解析:round(2.785,2)保留兩位小數(shù),運(yùn)行后為2.79。28. map()不會根據(jù)提供的函數(shù)對指定序列做映射。(?)正確錯誤標(biāo)準(zhǔn)答案:錯誤試題解析:map()會根據(jù)提供的函數(shù)對指定序列做映射。第一個參數(shù)function以參數(shù)序列中的每一個元素調(diào)用function函數(shù),返回包含每次function函數(shù)返回值的新列表。29. 語句print(tuple(range(5)))的輸出結(jié)果是(0,1,2,3,4)。(?)正確錯誤標(biāo)準(zhǔn)答案:正確試題解析:語句tuple(range(5))的輸出結(jié)果是(0,1,2,3,4)。30. 運(yùn)行語句set('2022'),其輸出結(jié)果是{'2','0','2','2'}?(?)正確錯誤標(biāo)準(zhǔn)答案:錯誤試題解析:運(yùn)行語句set('2022'),其輸出結(jié)果是{'0','2'}。31. f=open(‘ss.csv’,’r’)
n=f.read().strip(“\n”).split(“,”)
f.close()
這段代碼的功能是讀取文件中的數(shù)據(jù)到列表。(?)正確錯誤標(biāo)準(zhǔn)答案:正確試題解析:考核read()函數(shù)的用法。32. 一維數(shù)組可以用列表實(shí)現(xiàn),二維數(shù)組則不能用列表實(shí)現(xiàn)。(?)正確錯誤標(biāo)準(zhǔn)答案:錯誤試題解析:一維數(shù)組和二維數(shù)組都可以用列表實(shí)現(xiàn)。二維數(shù)組通過列表嵌套列表實(shí)現(xiàn)。33. 用withopen(‘fruits.csv’,’r’)asf語句,打開fruits.csv文件,在處理結(jié)束后不會自動關(guān)閉被打開的文件,因此需要寫上f.close()語句。(?)正確錯誤標(biāo)準(zhǔn)答案:錯誤試題解析:用with語句打開文件,處理結(jié)束后會自動關(guān)閉被打開的文件。34. 異常處理結(jié)構(gòu)中,finally程序段中的語句不一定都會得到執(zhí)行。(?)正確錯誤標(biāo)準(zhǔn)答案:錯誤試題解析:35. 在計(jì)算機(jī)中,每一個二進(jìn)制位可以表示0和1兩種信息。(?)正確錯誤標(biāo)準(zhǔn)答案:正確試題解析:二進(jìn)制數(shù)的表示。三、編程題(共3題,共30分)36. 下面程序?qū)崿F(xiàn)對二維數(shù)據(jù)的處理,請你補(bǔ)全代碼。f=open('/data/score2. csv','r')a=[]
foriinf:
a.append(i.strip().split(','))
f.close()
①
foriina:
s=''
forjini:
②
print(s)程序執(zhí)行結(jié)果為:[['王鑫','86','90','92','99','94','95'],['楊小虹','93','97','95','90','86','85'],['李靜','89','98','99','94','90','85']]
王鑫869092999495
楊小虹939795908685
李靜899899949085標(biāo)準(zhǔn)答案:參考程序:f=open('/data/score2. csv','r')a=[]
foriinf:
a.append(i.strip().split(','))
f.close()
print(a,'\n')
foriina:
s=''
forjini:
s=s+'{:6}\t'.format(j)
print(s)試題解析:評分標(biāo)準(zhǔn):print(a,'\n')或等效答案;(2分)
(2)s=s+'{:6}\t'.format(j)或等效答案。(2分)37. 在三位數(shù)的自然數(shù)中,找出至少有一位數(shù)字是5的,至少能被3整除的所有整數(shù),并統(tǒng)計(jì)個數(shù),具體代碼如下:count=0lst=[]foriinrange(①):ifi%3==0:a=i%10b=i//10%10c=②if③:count+=1lst.append(i)print("這樣的三位數(shù)有:",lst)print("總數(shù)量有:",count)標(biāo)準(zhǔn)答案:參考程序:count=0lst=[]foriinrange(100,1000):ifi%3==0:a=i%10b=i//10%10c=i//100ifa==5orb==5orc==5:count+=1lst.append(i)print("這樣的三位數(shù)有:",lst)print("總數(shù)量有:",count)試題解析:評分標(biāo)準(zhǔn):(1)100,1000或者100,1000,1;(3分)(2)i//100;(3分)(3)a==5orb==5orc==5。(4分)38. 輸入一個正數(shù),以下代碼編程求出它的平方根。請你補(bǔ)全代碼。in_var=float(input("請輸入一個需要開方的正數(shù),可以使用2位小數(shù):\nx="))ifin_var<0:x=-in_varelse:x=in_varlow=0.0high=xs_root=①ifx>0andx<1:high=1.0low=0s_root=②ifx>=0:whileabs(③)>0.0001:ifx>1.0:ifs_root**2<x:low=s_rootelse:high=s_roots_root=④ifx==1.0andx==0.0:s_root=xelse:ifs_root**2<x:low=s_rootelse:high=s_roots_root=⑤ifin_var>=0:print("所求數(shù)的平方根為:s_root=%.1f"%(s_root))標(biāo)準(zhǔn)答案:參考程序:in_var=float(input("請輸入一個需要開方的正數(shù),可以使用2位
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 衛(wèi)生系統(tǒng)平安建設(shè)活動方案(3篇)
- 質(zhì)控小組職責(zé)模版(2篇)
- 施工人員管理制度(3篇)
- 二零二五年度建筑工程施工服務(wù)外包合同2篇
- 課題申報書:大語言模型驅(qū)動三語教學(xué)的能動性分析和應(yīng)用路徑研究
- 裝飾圖案課程設(shè)計(jì)理念
- 二零二五年度新能源設(shè)備技術(shù)出口服務(wù)協(xié)議3篇
- 2024年規(guī)范化勞務(wù)輸出協(xié)議模板
- 材料員崗位的具體職責(zé)說明范文(2篇)
- 課題申報書:大學(xué)生數(shù)字化生存境況及優(yōu)化路向研究
- 中東及非洲注塑成型模具行業(yè)現(xiàn)狀及發(fā)展機(jī)遇分析2024-2030
- JGJ276-2012 建筑施工起重吊裝安全技術(shù)規(guī)范 非正式版
- QCT1067.4-2023汽車電線束和電器設(shè)備用連接器第4部分:設(shè)備連接器(插座)的型式和尺寸
- VDA6.3-2023過程審核檢查表
- 一年級數(shù)學(xué)下冊平面圖形數(shù)個數(shù)問題詳解+練習(xí)
- 錦綸纖維研究報告-中國錦綸纖維行業(yè)競爭格局分析及發(fā)展前景研究報告2020-2023年
- 浙江省舟山市2023-2024學(xué)年高二上學(xué)期1月期末檢測地理試題(解析版)
- 國家電網(wǎng)有限公司架空輸電線路帶電作業(yè)工作管理規(guī)定
- 計(jì)算機(jī)安全弱口令風(fēng)險
- 《寫字樓招商方案》課件
- 文旅劇本殺項(xiàng)目策劃方案
評論
0/150
提交評論