【正文】
錯誤1:兔子4只腿,最多只能是23只,而 range(1,23)只取到22,沒取到23,故應改為: range(1,24)錯誤2:縮進錯誤,y=35x、if 4*x+2*y==94:是for語句中的語句塊,應縮進。print(兔子有%s只,雞有%s只%(x,y))是if語句中的語句塊,應縮進。調(diào)試完最終輸出:兔子有12只,雞有23只。32.n=10 m=m+(n**(le2i))*a t=convert(s1) 24D 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①二進制的權值是2,十進制的權值是10,十六進制的權值是16,此處是十進制的情況,故填n=10。②二進制、十六進制轉化為十進制的方法是“按權展開、逐項相加”,從右往左加,變量i的初值等于0,故此處要變換為le2i,故此處填m=m+(n**(le2i))*a。③當字符c是“+”、“”、“=”時,則表明第一個運算數(shù)已全部保存到變量s1中,此處需要將其轉化為十進制保存到變量t中,故填t=convert(s1)。④1110B轉化為十進制數(shù)是14D,30H轉化為十進制數(shù)是48D,故1110B+10D30H=24D。33.n[0:5] s=0 total=ss//x*y 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①此處通過條件分支結構取字符串n的前5個字符,當len(n)=5時,取n= n[0:5],即索引為0、4,故填n[0:5]。②用變量s統(tǒng)計消費合計,初值為0,故填s=0。③此處else部分處理1000元以下享受每滿100減15優(yōu)惠。應付金額用total統(tǒng)計,變量r保存消費額度,x和y分別是滿和減,變量s是消費合計,故填total=ss//x*y。34.i%j==0 t=i t=t//10 【詳解】本題主要考查Python程序執(zhí)行與調(diào)試。①此處是處理從2開始到i開方加1,若能整除i則表明i不是素數(shù),否則直到循環(huán)結束,表明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.total60000 every_year* 【詳解】本題主要考查Python程序執(zhí)行與調(diào)試。①由題干可知,while循環(huán)條件是總銷量total小于60000,故第一空填total60000。②平均每年的銷量比上一年增加68%,即every_year + =every_year*,故第二空填every_year*。36.for i in range(1,10): for j in range(1,i+1): print(str(j)+*+str(i)+=+str(i*j),end= )print()【詳解】本題主要考查Python程序的執(zhí)行。九九乘法口訣表可以通過嵌套for循環(huán)實現(xiàn),內(nèi)層循環(huán)完一次,執(zhí)行print()換行,具體代碼如下:for i in range(1,10): for j in range(1,i+1): print(str(j)+*+str(i)+=+str(i*j),end= )print()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程序設計??梢酝ㄟ^for循環(huán)找出100以內(nèi)的素數(shù),用i依次整數(shù)2~i1,如果能整除表明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.a(chǎn)=int(input( 請輸入數(shù) a:))b=int(input( 請輸入數(shù) b:))if ab: t=a a=b b=t print(用戶輸入的數(shù)按小到大排序結果是: , a, b)else :print(原樣輸出 ,a,b)【詳解】本題主要考查Python程序設計。使用input函數(shù)接收兩個數(shù)a和b,用if條件分支結構判斷a和b的大小,如果a大于b,則交換,否則原樣輸出,具體代碼如下:a=int(input( 請輸入數(shù) a:))b=int(input( 請輸入數(shù) b:))if ab: t=a a=b b=t print(用戶輸入的數(shù)按小到大排序結果是: , a, b)else :print(原樣輸出 ,a,b)39.for i in range(100,1000): a=i//100 b= (i//10)%10 c=i%10 if i==a*a*a+b*b*b+c*c*c: print(i)【詳解】本題主要考查程序設計。可通過Python程序設計實現(xiàn)題干要求,通過for循環(huán)找出水仙花數(shù),依次取出三位數(shù)的每一位數(shù),其中百位a= i//100,十位b= (i//10)%10,個位c=i%10,然后判斷是否是水仙花數(shù),具體代碼如下:for i in range(100,1000): a=i//100 b= (i//10)%10 c=i%10 if i==a*a*a+b*b*b+c*c*c: print(i)40.解析法或解析 A 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①由算法分析可知,本題采用的算法是解析法或解析。②3公里內(nèi)(含3公里),收費8元;超過3公里但未超過6公里部分,;超過6公里部分,故此處填3s=6,故選A選項。