【正文】
,最多只能是23只,而 range(1,23)只取到22,沒(méi)取到23,故應(yīng)改為: range(1,24)錯(cuò)誤2:縮進(jìn)錯(cuò)誤,y=35x、if 4*x+2*y==94:是for語(yǔ)句中的語(yǔ)句塊,應(yīng)縮進(jìn)。print(兔子有%s只,雞有%s只%(x,y))是if語(yǔ)句中的語(yǔ)句塊,應(yīng)縮進(jìn)。【詳解】本題考查的是Python調(diào)試。本題程序錯(cuò)誤如下:錯(cuò)誤1:兔子4只腿,最多只能是23只,而 range(1,23)只取到22,沒(méi)取到23,故應(yīng)改為: range(1,24)錯(cuò)誤2:縮進(jìn)錯(cuò)誤,y=35x、if 4*x+2*y==94:是for語(yǔ)句中的語(yǔ)句塊,應(yīng)縮進(jìn)。print(兔子有%s只,雞有%s只%(x,y))是if語(yǔ)句中的語(yǔ)句塊,應(yīng)縮進(jìn)。調(diào)試完最終輸出:兔子有12只,雞有23只。32.day=int(s[8:])或day=int(s[2:]) 0,month1 isleap and month2 year%4==0 and year%100!=0 or year%400==0 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①2020年是閏年,2月是29天,故“20200520”這一天是這一年的第31+29+31+30+20=141天。②變量s是字符串型,下標(biāo)從0開(kāi)始,此處是將輸入日期中的天取出來(lái)放到變量day中,可以使用切片操作:從左邊開(kāi)始截取,也可以從右邊截取,故此處填day=int(s[8:])或day=int(s[2:])。③通過(guò)循環(huán)將前month1個(gè)月的天數(shù)加起來(lái),故變量i的范圍是0到month1,故填0,month1。④變量isleap標(biāo)記是不是閏年,如果isleap值為真且month2,則sum需要遞增1,故填isleap and month2。⑤由題干閏年判斷條件,可知加框處應(yīng)改為year%4==0 and year%100!=0 or year%400==0。33.是 k%2==0或(k+1)%2==1或(k1)%2==1 ans+code[p] ans 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①若接收到的二進(jìn)制碼為“101011011”,1的個(gè)數(shù)有6個(gè),則傳輸過(guò)程存在差錯(cuò)。②變量k統(tǒng)計(jì)1的個(gè)數(shù),若k是偶數(shù)則表明傳輸錯(cuò)誤,否則傳輸正確,故此處填k%2==0或(k+1)%2==1或(k1)%2==1。③如果p是1~9之間的數(shù)字,則直接將p拼接到ans中,否則從字典code中取對(duì)應(yīng)的字母,故此處填ans+code[p]。④變量ans保存轉(zhuǎn)換后的十六進(jìn)制,故此處填ans。34.n*f(n1) range(1,n+1) s+f(i) 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①此處是定義遞歸函數(shù)f(n),由題干,當(dāng)n=0時(shí),返回1,否則返回n*f(n1),故此處填n*f(n1)。②用遞歸算法求1!+2!+……+n!,故變量i的范圍應(yīng)是1—n,for i in range(1,n+1)表示i的范圍是[1,n],故此處填range(1,n+1)。③循環(huán)體實(shí)現(xiàn)累加,將每一項(xiàng)階乘f(i)加到s中,故此處填s+f(i)。35.xingzuo[“小紅”] xingzuo[“小蘭”]=“水瓶座” xingzuo[“小貝”]=“雙子座” del xingzuo 【詳解】本題主要考查字典數(shù)據(jù)類(lèi)型。①字典數(shù)據(jù)類(lèi)型,可以通過(guò)檢索字典的鍵值得到對(duì)應(yīng)的值,即xingzuo[“小紅”]=‘處女座’,故第一空填xingzuo[“小紅”]。②將“小蘭”同學(xué)的星座修改為“水瓶座”,可以通過(guò)語(yǔ)句xingzuo[“小蘭”]=“水瓶座”。③同理添加小貝的信息為,xingzuo[“小貝”]=“雙子座”。④刪除該字典的表達(dá)式是del xingzuo。36.34或 money//hen_price+1 101 或 money//threechick_price+1 chick_num*3 【詳解】本題主要考查Python程序執(zhí)行與調(diào)試。①母雞只數(shù)可能為133,對(duì)比最外層循環(huán)范圍,第一空填34或 money//hen_price+1。②小雞只數(shù)可能為1100,同理第二空填101 或 money//threechick_price+1。③公雞5文錢(qián)1只,母雞3文錢(qián)1只,小雞3只1文錢(qián),故第三空填chick_num*3。37.1n%i==0 2s=s+1【詳解】本題主要考查Python程序的執(zhí)行。1變量i的取值范圍是1~n,如果n能整除i,則i為n的一個(gè)約數(shù),s統(tǒng)計(jì)約數(shù)的個(gè)數(shù),故此處應(yīng)修改為n%i==0。2如果n能整除i,則s遞增,故此處應(yīng)改為s=s+1。38.s=input(請(qǐng)輸入要轉(zhuǎn)換的字符)c=len(s) len 求字符串長(zhǎng)度f(wàn)or i in range(0,c): if i2: print (chr(ord(s[i])+2)) ord ord() 函數(shù)是 chr() 函數(shù)配對(duì)函數(shù),將字符轉(zhuǎn)ASCII值 else: print(chr(ord(s[i]) + 3))【詳解】本題主要考查程序設(shè)計(jì)。題干要求可通過(guò)Python程序條件分支結(jié)構(gòu)實(shí)現(xiàn),具體代碼如下:s=input(請(qǐng)輸入要轉(zhuǎn)換的字符)c=len(s) len 求字符串長(zhǎng)度f(wàn)or i in range(0,c): if i2: print (chr(ord(s[i])+2)) ord ord() 函數(shù)是 chr() 函數(shù)配對(duì)函數(shù),將字符轉(zhuǎn)ASCII值 else: print(chr(ord(s[i]) + 3))39.sum1=0sum2=0for i in range(1,101): if i%2==0 : sum1+=i else: sum2+=iprint(sum1,sum2)【詳解】本題主要考查程序設(shè)計(jì)。可以使用Python程序設(shè)計(jì)語(yǔ)言實(shí)現(xiàn)題干要求,通過(guò)if條件分支結(jié)構(gòu)可以實(shí)現(xiàn)分別計(jì)算奇數(shù)的和、偶數(shù)的和,具體代碼如下:sum1=0sum2=0for i in range(1,101): if i%2==0 : sum1+=i else: sum2+=iprint(sum1,sum2)40.字符串類(lèi)型 你及格了喔 表現(xiàn)不錯(cuò) 程序結(jié)束 不及格 學(xué)習(xí)方法可能不對(duì) 程序結(jié)束 60 80 錯(cuò) 【詳解】本題主要考查Python編程。① input() 函數(shù)接受一個(gè)標(biāo)準(zhǔn)輸入數(shù)據(jù),返回為 string 類(lèi)型,因此此處為字符串類(lèi)型;②輸入期末成績(jī)?yōu)?5時(shí),滿(mǎn)足大于等于60及大于等于80條件,因此此處輸出為“你及格了喔 表現(xiàn)不錯(cuò) 程序結(jié)束”;③輸入期末成績(jī)?yōu)?5時(shí),滿(mǎn)足小于60及大于等于30,因此此處輸出為“不及格 學(xué)習(xí)方法可能不對(duì) 程序結(jié)束”;評(píng)價(jià)是“還可以再提升”項(xiàng),屬于大于等于60且小于80范圍,因此④為60,⑤為80;elif后需添加判斷條件,因此⑥為錯(cuò)。【點(diǎn)