【正文】
on程序執(zhí)行。a=23,b=int(a/10)=2,a=(ab*10)*10=30,b=a+b=32,故代碼運行后,a、b的值為32,故本題選C選項。解析:C【詳解】本題主要考查Python程序執(zhí)行。a=23,b=int(a/10)=2,a=(ab*10)*10=30,b=a+b=32,故代碼運行后,a、b的值為32,故本題選C選項。29.D【詳解】本題主要考查Python表達式的運算。round(x,n)方法返回 x 的小數(shù)點四舍五入到n個數(shù)字,abs是求絕對值,已知a=2,b=10/3,則表達式round(b,1)+abs(解析:D【詳解】本題主要考查Python表達式的運算。round(x,n)方法返回 x 的小數(shù)點四舍五入到n個數(shù)字,abs是求絕對值,已知a=2,b=10/3,則表達式round(b,1)+abs(a)=+2=,故本題選D選項。30.C【詳解】本題考查的是python中print函數(shù)。print(str)str是任意一個字符串,數(shù)字等?!?+6”是字符串故輸出為:3+6,選項C正確。解析:C【詳解】本題考查的是python中print函數(shù)。print(str)str是任意一個字符串,數(shù)字等。“3+6”是字符串故輸出為:3+6,選項C正確。二、程序填空31.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是字符串型,下標從0開始,此處是將輸入日期中的天取出來放到變量day中,可以使用切片操作:從左邊開始截取,也可以從右邊截取,故此處填day=int(s[8:])或day=int(s[2:])。③通過循環(huán)將前month1個月的天數(shù)加起來,故變量i的范圍是0到month1,故填0,month1。④變量isleap標記是不是閏年,如果isleap值為真且month2,則sum需要遞增1,故填isleap and month2。⑤由題干閏年判斷條件,可知加框處應(yīng)改為year%4==0 and year%100!=0 or year%400==0。32.range(1,20) 5*x+3*y+z/3 == 100 c = c+1 【詳解】本題考查的是python編程。X代表的是公雞,公雞5元一只,所以此處的range函數(shù)為range(1,20),左閉右開區(qū)間。if條件是滿足三種雞的總價格為100元的條件,故答案為5*x+3*y+z/3 == 100,注意這里是一個判斷條件,用==表示。c代表的是有幾種購買方案,當if條件滿足時,即滿足一種方案,執(zhí)行方案數(shù)加1,c=c+1。33.n*f(n1) range(1,n+1) s+f(i) 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①此處是定義遞歸函數(shù)f(n),由題干,當n=0時,返回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)體實現(xiàn)累加,將每一項階乘f(i)加到s中,故此處填s+f(i)。34.i%j==0 t=i t=t//10 【詳解】本題主要考查Python程序執(zhí)行與調(diào)試。①此處是處理從2開始到i開方加1,若能整除i則表明i不是素數(shù),否則直到循環(huán)結(jié)束,表明i是素數(shù),故此處填i%j==0。②若i是素數(shù),則將變量i賦給變量t,并通過while循環(huán)將t的每一位取出來并加到summ中,故此處填t=i。③同理此處取出個位數(shù)后,更新t的值繼續(xù)循環(huán),故此處填t=t//10。35.or i+1 【詳解】本題主要考查Python程序執(zhí)行與調(diào)試。①分析程序可知,程序采用枚舉的算法找出該數(shù),當不滿足條件時,i遞增繼續(xù)判斷,故i的初始值是0,第一空填0。②一個數(shù)除以3余2,除以5余3,除以7余2,此處是取不滿足情況時,i遞增,and取反變?yōu)閛r,故第二空填or。③同理第三空填i+1。36.34或 money//hen_price+1 101 或 money//threechick_price+1 chick_num*3 【詳解】本題主要考查Python程序執(zhí)行與調(diào)試。①母雞只數(shù)可能為133,對比最外層循環(huán)范圍,第一空填34或 money//hen_price+1。②小雞只數(shù)可能為1100,同理第二空填101 或 money//threechick_price+1。③公雞5文錢1只,母雞3文錢1只,小雞3只1文錢,故第三空填chick_num*3。37.B C C C D 【詳解】本題主要考查二分查找算法及Python程序?qū)崿F(xiàn)。①二分查找的循環(huán)條件是left<=right,故選B選項。②此處是取中間值,需要整除2,故填(left+right)//2,故選C選項。③如果mid對應(yīng)的列表值是1000,表示已找到,則用break跳出循環(huán),選C選項。④如果mid對應(yīng)的列表值小于1000,則需要更新left的值為mid+1繼續(xù)循環(huán),選C選項。⑤否則更新right的值為mid1,選D選項。38.pw=input(請輸入密碼:)password=123456i=1while(i=3): if pw==password: print(恭喜你進入系統(tǒng)!) break else: print(請重新嘗試:,i) pw = input(請輸入密碼:) i=i+1【詳解】本題主要考查程序設(shè)計??梢酝ㄟ^Python程序設(shè)計語言實現(xiàn)題干要求,可以通過while循環(huán)控制三次機會,使用if條件分支結(jié)構(gòu)判斷是否輸入正確,具體代碼如下:pw=input(請輸入密碼:)password=123456i=1while(i=3): if pw==password: print(恭喜你進入系統(tǒng)!) break else: print(請重新嘗試:,i) pw = input(請輸入密碼:) i=i+139.解析法或解析 A 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①由算法分析可知,本題采用的算法是解析法或解析。②3公里內(nèi)(含3公里),收費8元;超過3公里但未超過6公里部分,;超過6公里部分,故此處填3s=6,故選A選項。40.s+i 【詳解】本題主要考查Python循環(huán)結(jié)構(gòu)。題目要求計算11.. 101等差數(shù)列之和,其中公差為5,因此①為5;s變量用于記錄等差數(shù)列之和,需進行累加計算,因此②為s+i?!军c