資源簡介 2024年江蘇省信息技術Python操作題模擬試卷(一)一、非選擇題:本大題共11小題,共11分。1.打印如下圖形:2.幸運號碼。某電視臺要從撥打熱線電話的觀眾中選取一批幸運觀眾,輸入一個電話號碼,并將號碼中至少有3個6的確定為幸運號碼。3.某一年期理財產品實際收益率為3.9%,由于產品一直持續運作,投資者不按時贖回視為自動投資,現有1萬元資金,請編程求出在收益率不變的情況下,至少多少年后投資可以翻倍?請在序號處填寫正確的代碼,且不改變原程序的結構,并把序號刪除,調試完成后保存文件。4.奇偶數求和輸入n個整數,將其中的奇數、偶數分別求和。請在序號處填寫正確的代碼,且不改變原程序的結構,并把序號刪除,調試完成后保存文件。5.用python編輯器打開“Y:\104”下的文件“找出三個數中最大的數.py”。進行以下操作并保存結果。(1) 請填空完善該程序,實現功能:輸入任意三個不同的整數,輸出其中最大的一個數;(2) 編寫完成后原名保存并關閉應用軟件。注:程序修改時,請把下劃線及序號刪除:不能刪除注釋語句。6.華氏度(℉):溫度的一種度量單位。“華氏溫標”是經驗溫標之一。寒暑表中通常有兩個刻度:攝氏度(記為℃)和華氏度(記為℉)。包括我國在內的世界上很多國家都使用攝氏度,美國和其他一些英語國家使用華氏度而較少使用攝氏度。本程序實現的功能是當你輸入輸入cf表示攝氏轉華氏,然后你輸入的是攝氏溫度值,并回車,根據換算公式就打印出華氏溫度值。fc表示華氏轉攝氏華氏溫度。然后你輸入的是華氏溫度值,再回車,就可打印出對應的攝氏溫度值。華氏度與攝氏度的換算:7.春天到了,學校準備組織學生外出旅游,需要租旅游巴士出行,下面程序就是通過編程讓計算機幫我們解決此問題。具體代碼如下:8.求解如下分段函數的值。9.體育課上全班女生進行60米跑速度測試,優秀的成績為6.5秒以內(包括6.5s,下面都是包括),良好的成績為7.5秒以內,及格成績為9.5以內,超過9.5秒即為不及格。請完善下面程序實現以上功能:10.關于火車票兒童票價,國家規定:一名成年人旅客可以免費攜帶一名身高不足1.2米的兒童。兒童身高為1.2~1.5米的,須購買兒童票(即票價是成年人票價的一半);超過1.5米的,須購買全價座票。請完善下面程序實現以上功能:11.將十進制正整數轉換為二進制數。參考答案1.解:(1)in是for循環中用于指定循環遍歷的范圍或序列的關鍵字。在這里,表示變量“i”依次取“range( )”函數生成的數值。(2)由打印結果可知,要打印5行“#”,所以“range(5)”可以生成0到4的整數序列,滿足循環5次的需求。(3)i在每次循環中依次遞增,從0開始,所以“print(“#“*(i+1))”可以實現每行“#”的數量依次增加,從而打印出逐漸增多的“#”形成的圖形。故答案為:in 5 i+1。2.解:(1)首先定義count為0,是為了初始化計數器。因為在開始遍歷電話號碼之前,還沒有統計到數字6的個數,所以將其初始化為0。故答案為:0。(2)使用count+=1是為了在每次遇到數字6時,將計數器加1。這樣就能逐步統計出電話號碼中6的數量。故答案為:count+=。(3)使用count>=3來判斷6是否至少有3個。因為我們的目的是確定電話號碼中是否至少有3個6,所以當計數器count的值大于或等于3時,就說明滿足了幸運號碼的條件。故答案為:count>=3。3.解:s=10000#初始投資金額year=0#初始年份#循環直到投資金額翻倍 while s<20000:#①處填寫 s<20000 year=year+1#每過一年,年份加1 s=s*(1+0.039)#②處填寫 1+0.039,即原始金額乘以(1+收益率) print(“至少“,year,“年后投資可以翻倍“)#③處填寫 year初始時,我們有10000元的投資(s=10000)。我們設置一個變量year來跟蹤經過的年數,初始為0。使用while循環,只要投資金額s小于20000元(即未翻倍),就繼續循環。在每次循環中,年份year增加1,并且投資金額s根據年收益率3.9%進行增長(即乘以1+0.039)。當投資金額s達到或超過20000元時,循環結束。最后,打印出經過的年數year,即投資翻倍所需的最少年數。故答案為:①s<20000;②1+0.039或0.039+1;③year。4.解:對奇數和偶數分別求和,存儲在變量s1和s2中,s1和s2初始化為0,故①處代碼為:0。if條件處判斷輸入的整數a是否為偶數,故②處代碼為:a%2,反之將其添加到奇數和上,所以③處為s2+a5.【小題1】解:(1)因為需要接收用戶輸入的第二個數并存儲在一個變量中,以便后續進行比較和計算,所以定義變量b來完成這個任務。(2)當a>b時,說明a是當前比較中的較大值,所以要把max更新為a,以便后續與c比較時能得到正確的最大值。(3)在已經比較了a和b并確定了當前的最大值存儲在max中后,還需要將c與max進行比較。如果c大于max,就需要更新max的值為c,這樣才能確保max最終存儲的是三個數中的最大值。(4)經過前面的比較和更新操作,max中存儲的就是三個數中的最大值,所以最后輸出max,以展示找到的最大數。故答案為:b max=a c>max max。【小題2】6.解:(1)使用float是為了將用戶輸入的溫度值轉換為浮點數類型。因為溫度值可能包含小數部分,使用float可以更準確地處理包含小數的溫度數值。故答案為:float。(2)根據華氏度與攝氏度的換算公式,攝氏度=(華氏度-32)÷1.8。所以當進行華氏轉攝氏的計算時,需要先將輸入的華氏溫度值減去32,即data-32。故答案為:data-32。(3)在華氏轉攝氏的計算中,經過前面的計算得到了攝氏溫度值并存儲在變量c中,所以最后打印的應該是計算得到的攝氏溫度值,即c。故答案為:c。7.解:(1)使用%運算符,即取余運算符。這里n%(m-1)用于判斷n除以(m-1)的余數是否為0,以確定是否剛好整除。(2)因為要計算能整除的車輛數,所以使用整除運算符//,除數是(m-1),即n//(m-1),得到的就是剛好能坐滿的車的數量。(3)如果n%(m-1)!=0,說明不能剛好整除,那么就需要在能坐滿的車的數量基礎上加1輛車。所以是n//(m-1)+1。故答案為:(1)% (2)(m-1)(3)n//(m-1)+18.解:依據分段函數,可知x<=6時,y=-2*x-4,故第一空應為:x<=6;多分支結構:if……elif……else結構,故第二空應為:elif;最后輸出函數的值存放在y中,故第三空應為:y。9.解:(1)因為輸入的短跑成績可能不是整數,可能帶有小數部分,所以這里使用float。例如,成績可能是6.3秒或者7.2秒等,float類型能夠準確地表示這樣的帶有小數的數值,以便后續進行準確的條件判斷。故答案為:float。(2)題目中規定優秀的成績為6.5秒以內。假如輸入的x值小于6.5秒,比如6.2秒,就滿足優秀的條件,所以當x<6.5時輸出“優秀”。故答案為:x<6.5。(3)假設前面的條件都不滿足,也就是說成績既不小于6.5秒,也不小于等于7.5秒和9.5秒,那就只能是大于9.5秒的情況,else就是用來處理這種除了前面幾種情況之外的剩余情況。故答案為:else。(4)這是因為當成績超過9.5秒時,根據題目給定的規則,這個成績就是不及格的。所以在else分支下,應該輸出“不及格”來表明該成績處于不及格的范疇。故答案為:“不及格“。10.解:(1)因為國家規定身高不足1.2米的兒童免費,所以這里用<來判斷輸入的兒童身高是否小于1.2米,如果小于,就執行total=ticket,即總票價等于成人票價。(2)elif用于在if條件不滿足的情況下,繼續判斷其他條件。當height<1.2不滿足時,接著判斷height<=1.5,如果滿足,說明兒童身高在1.2米至1.5米之間,需要購買兒童票,即總票價為成人票價的1.5倍。(3)當前面兩個條件都不滿足時,即兒童身高超過1.5米,此時兒童需要購買全價票,所以總票價是成人票價的兩倍,用ticket*2來計算。(4)在輸出結果時,要顯示計算得到的總票價,而總票價是通過前面的計算存儲在變量total中的,所以輸出total。故答案為:<elif ticket*2 total。11.解:①當num不為0時,語句為num!=0;②%表示求余數,x代表num除以2的余數,語句為 x=num% 2,故此處為:%;③//表示整除,將num整除2后迭代,語句為 num=num//2,故此處為://。第1頁,共1頁 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫