【正文】
。【點(diǎn)睛】29.D【詳解】本題主要考查Python語法格式。不需要縮進(jìn)的代碼頂行寫,前面不能留空白;縮進(jìn)可以用 tab 鍵實(shí)現(xiàn),也可以用多個(gè)空格實(shí)現(xiàn);嚴(yán)格的縮進(jìn)可以約束程序結(jié)構(gòu),可以多層縮進(jìn);縮進(jìn)是代碼書寫規(guī)則解析:D【詳解】本題主要考查Python語法格式。不需要縮進(jìn)的代碼頂行寫,前面不能留空白;縮進(jìn)可以用 tab 鍵實(shí)現(xiàn),也可以用多個(gè)空格實(shí)現(xiàn);嚴(yán)格的縮進(jìn)可以約束程序結(jié)構(gòu),可以多層縮進(jìn);縮進(jìn)是代碼書寫規(guī)則要求,故本題選D選項(xiàng)。30.C【詳解】本題主要考查Python語句。變量的命名規(guī)則有:只能以字母或下劃線開頭,不能包含特殊符號(hào),不能是關(guān)鍵字。單行代碼注釋以開始,語句j,b=b,j表示交換b與j的值,故本題選C選項(xiàng)。解析:C【詳解】本題主要考查Python語句。變量的命名規(guī)則有:只能以字母或下劃線開頭,不能包含特殊符號(hào),不能是關(guān)鍵字。單行代碼注釋以開始,語句j,b=b,j表示交換b與j的值,故本題選C選項(xiàng)。二、程序填空31.m=0 elift60: A 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①若員工在本月累計(jì)運(yùn)動(dòng)時(shí)間30小時(shí)以下,獎(jiǎng)勵(lì)0元,即m=0。②達(dá)到45但不足60小時(shí)獎(jiǎng)勵(lì)450元,故填elift60:。③10,不是有效值,故輸出信息為“輸入錯(cuò)誤”,故本題選A選項(xiàng)。32.import 0~19(包括0和19) import random as r 讓程序無限循環(huán) break。 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①Python中導(dǎo)入庫文件的命令是import,如import random。②(0,20)生成的隨機(jī)數(shù)的范圍是0~19(包括0和19)。③(0,20)這么長的句子,可以修改程序中的第一行為import random as r(給random取個(gè)簡單的別名)。④while True 的作用是讓程序無限循環(huán)。⑤如果while True造成程序無法停止,我們可以在程序中添加一行break。(滿足條件后,執(zhí)行break??梢蕴鲅h(huán))。33.自然語言 確保m=n r!=0 【詳解】本題主要考查算法及Python程序?qū)崿F(xiàn)。①描述一是自然語言描述法;描述二是流程圖描述法;描述三是計(jì)算機(jī)程序語言描述法。②在描述三中代碼4到6行,當(dāng)mn時(shí),交換m、n的值,否則跳過,故作用是確保m=n。③由題干可知,循環(huán)條件是余數(shù)r不等于0,故代碼第8行劃線處為r!=0。34.list3[2] list1[1:4] list2=list2+list4 或 (list4) list1=list1+[“塑料瓶”] 或者 (“塑料瓶”) 【詳解】本題主要考查Python列表數(shù)據(jù)類型。①“過期食品”在列表list3索引2,故從列表list3中取出“過期食品”的表達(dá)式:list3[2]。②舊書,金屬,紙板箱在列表list1索引1~3,從list1中截取[舊書,金屬,紙板箱]這一段的表達(dá)式:list1[1:4](不包括4)。③將該列表中的元素添加到list2中,表達(dá)式是list2=list2+list4 或 (list4)。(extend()函數(shù)用于在列表末尾一次性追加另一個(gè)序列中的多個(gè)值(用新列表擴(kuò)展原來的列表))。④將塑料瓶添加到列表list1中:list1=list1+[“塑料瓶”] 或者 (“塑料瓶”)(append字符追加函數(shù))。35.m%n r r=m%n n gcd(a,b) 【詳解】本題主要考查Python程序設(shè)計(jì)。①首先對m和n求余得到r,判斷r是否為0,故此處填m%n。②如果r為0則結(jié)束,否則更新m的值為n,n的值為r。③此處用更新后的m和n繼續(xù)求r,繼續(xù)判斷,故填r=m%n。④循環(huán)結(jié)束后當(dāng)r=0時(shí),n即為最大公約數(shù),故填n。⑤輸入a、b的值,使用函數(shù)gcd求a和b的最大公約數(shù),故填gcd(a,b)。36.C A B 【詳解】本題主要考查隊(duì)列數(shù)據(jù)結(jié)構(gòu)及Python程序。①隊(duì)列是從隊(duì)頭出隊(duì),隊(duì)尾入隊(duì),使用pop函數(shù)出隊(duì),隊(duì)頭的索引值是0,(0),(0)。②隊(duì)列入隊(duì)使用append方法追加到隊(duì)列尾,(x),故選A選項(xiàng)。③同理,(y),故選B選項(xiàng)。37.for i in range(1,100): if i 1: for j in range(2,i): if (i % j) == 0: break else:print(i)【詳解】本題主要考查Python程序設(shè)計(jì)??梢酝ㄟ^for循環(huán)找出100以內(nèi)的素?cái)?shù),用i依次整數(shù)2~i1,如果能整除表明i不是素?cái)?shù),否則i為質(zhì)數(shù),具體代碼如下:for i in range(1,100): if i 1: for j in range(2,i): if (i % j) == 0: break else:print(i)38.s=0n=eval(input( 請輸入一個(gè)數(shù):))for i in range(0,n): f=1 for j in range(1,i): f=f*j s+=fprint(s%1000000)【詳解】本題主要考查Python程序設(shè)計(jì)??梢酝ㄟ^嵌套for循環(huán)實(shí)現(xiàn)題干要求,外層循環(huán)進(jìn)行求和,內(nèi)層循環(huán)實(shí)現(xiàn)階乘,具體代碼如下:s=0n=eval(input( 請輸入一個(gè)數(shù):))for i in range(0,n): f=1 for j in range(1,i): f=f*j s+=fprint(s%1000000)39.range(1,33) g+m+x==100 5*g+3*m+x/3 【詳解】本題考查的是算法中的經(jīng)典問題。百雞百錢問題是典型的枚舉算法解決,枚舉算法的關(guān)鍵就是找到問題解決的條件和枚舉范圍。40.整除 取余 判斷是否相等 百 十 個(gè) 1000 【詳解】本題考查的是python語言及對程序?qū)崿F(xiàn)的理解。(1)//的符號(hào)作用是取整除,返回商的整數(shù)部分(向下取整)。(2)%的符號(hào)作用是取模,返回除法的余數(shù)。(3)等于,比較符號(hào)兩邊對象是否相等。(4)(5)(6)i=n//100,j=n//10%10,k=n%10,分別利用取整和取余符號(hào),算出三位數(shù)對應(yīng)的每一位上的數(shù)字。(7)range()函數(shù)的區(qū)間是左閉右開,所以第二個(gè)參數(shù)1000是取不到