【正文】
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開始,此處是將輸入日期中的天取出來放到變量day中,可以使用切片操作:從左邊開始截取,也可以從右邊截取,故此處填day=int(s[8:])或day=int(s[2:])。③通過循環(huán)將前month1個(gè)月的天數(shù)加起來,故變量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。17. Python程序設(shè)計(jì)語言規(guī)定,在標(biāo)識(shí)符中,字母大小寫是有區(qū)別的。該程序代碼中表示里程費(fèi)的Tot2錯(cuò)誤將字母“T”寫成了小寫”“t”。 合理的順序是:③分析問題①設(shè)計(jì)算法②編寫程序④調(diào)試運(yùn)行程序 略 【詳解】本題主要考查Python程序的編寫。①Python程序設(shè)計(jì)語言屬于程序設(shè)計(jì)語言中的高級(jí)語言,選C選項(xiàng)。②“Tot2=8”是一個(gè)賦值語句,選C選項(xiàng)。③“初始化時(shí)長(zhǎng)費(fèi)為0”是一個(gè)注釋語句,選D選項(xiàng)。④“S<=”是一個(gè)表達(dá)式,選B選項(xiàng)。⑤“float(input(“請(qǐng)輸入時(shí)長(zhǎng)”))”是一個(gè)函數(shù),float() 函數(shù)用于將整數(shù)和字符串轉(zhuǎn)換成浮點(diǎn)數(shù),選A選項(xiàng)。⑥編譯運(yùn)行發(fā)現(xiàn)報(bào)錯(cuò)了,根據(jù)下圖中所示的錯(cuò)誤信息分析該程序報(bào)錯(cuò)的原因是:Python程序設(shè)計(jì)語言規(guī)定,在標(biāo)識(shí)符中,字母大小寫是有區(qū)別的。該程序代碼中表示里程費(fèi)的Tot2錯(cuò)誤將字母“T”寫成了小寫”“t”。⑦小C借助于計(jì)算機(jī)編寫程序解決問題的這個(gè)過程,合理的順序是:③分析問題①設(shè)計(jì)算法②編寫程序④調(diào)試運(yùn)行程序。⑧略18.tc0 c=c+1 或者c+=1 【詳解】本題主要考查Python程序執(zhí)行與調(diào)試。①變量tc保存西瓜數(shù)量,當(dāng)tc大于0時(shí),一直循環(huán),故第一空填tc0。②變量c保存天數(shù),每循環(huán)一次,變量c遞增1,故第二空填c=c+1 或者c+=1。19.c=0print(能同時(shí)被3或5整除的數(shù)是:,end= )for i in range(1,101): if i%3==0 and i%5==0: c+=1 print(i,end= )print()print(能同時(shí)被3或5整除的個(gè)數(shù)是:+str(c))【詳解】本題主要考查Python程序設(shè)計(jì)。設(shè)計(jì)100以內(nèi)的數(shù)中能同時(shí)被3或5整除的個(gè)數(shù),使用for循環(huán)變量i的范圍是從1~99,用變量c統(tǒng)計(jì)能同時(shí)被3或5整除的個(gè)數(shù),如果滿足if判斷條件,則變量c遞增,循環(huán)完輸出c的值,具體代碼及運(yùn)行結(jié)果如下:20.int(day[5:7]) (year%4==0 and year%100!=0 or year%400==0) and month=2 tall_day+=1 110 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①此處是取出字符串day中的月份賦給變量month,month是第5~第6位,str[start:end],start會(huì)包含在結(jié)果中而end卻不會(huì),故此處填int(day[5:7])。②此處判斷是不是閏年,因?yàn)殚c年的二月有29天,故if判斷還要判斷當(dāng)前的月份是不是包含2月即大于等于2月,故此處填(year%4==0 and year%100!=0 or year%400==0) and month=2。③如果是閏年且當(dāng)前日期包括2月,則循環(huán)完tall_day需增加1天,故填tall_day+=1。④輸入“2020419”為當(dāng)年的第110天。21.range(1,33) g+m+x==100 5*g+3*m+x/3 【詳解】本題考查的是算法中的經(jīng)典問題。百雞百錢問題是典型的枚舉算法解決,枚舉算法的關(guān)鍵就是找到問題解決的條件和枚舉范圍。