資源簡介 必修一第四章程序設計基礎章末復習習題(二) 一、選擇題(本大題共11小題) 下列選項中能作為python程序變量名的是( ) A. true B. while C. s+1 D. 3stu 下列定義變量的python程序語句變量賦值錯誤的是( ) A. x=y=1 B. x,y=1,2 C. x==1 D. x=1,2 小平打算用python編寫一個管理班上同學通訊錄的程序,如果用一個變量A來對應處理同學們的電話號碼,這個變量A定義成什么數據類型比較適合?()。 A. 布爾型 B. 浮點型 C. 整型 D. 字符串 設a=2,b=5,在python中,表達式a>bAndb>3的值是( ) A. False B. True C. -1 D. 1 python文件的擴展名是( ) A. py B. pye C. vbp D. pyr 在Python中,關于變量的說法,正確的是()。 A. 變量必須以字母開頭命名 B. 變量只能用來存儲數字,不能存儲漢字 C. 在python中變量類型一旦定義就不能再改變 D. 變量被第二次賦值后,新值會取代舊的值 檢測輸入的四位整數abcd是否滿足下述關系:(ab+cd)(ab+cd)=abcd。實現上述功能的python程序代碼如下: k=int(input(“輸入一個四位數:”)) ① y=k%100 if②: print(“符合”) else: print(“不符合”) 劃線處應填入的代碼是( ) A. ①x=k/100②(x+y)*2!=k B. ①x=k//100②(x+y)*2==k C. ①x=k/100②(x+y)**2!=k D. ①x=k//100②(x+y)**2==k 在python中,Int( )函數的功能是返回不大于x的最大整數,設a=3,b=4,c=5,則下列表達式的運算結果中值最大的是( ) A. math.sqrt(b) B. abs(a-b) C. Int(2*a-c/b) D. a**2+b**2-c**2 156083051816000以下文本框內是一段用Python程序設計語言編寫的源代碼,功能是解決雞兔同籠問題。這段源代碼屬于_______。 A. 軟件 B. 程序 C. 命令 D. 指令 運行圖中的python代碼,得到圖示的運行結果,如果在第一個文本框中輸入3,在第二個文本框中輸入4,然后單擊命令按鈕“計算”后,結果文本框中顯示的內容是( ) Label(frm3.text=“結果“,width=6).pack(side=LEFT) Entry(frm3,width=10,textvariable=C).pack( ) 41922702286000def cal( ): a=int (A.get( )) b=int (B.get( )) c=2*(a+b) C.set(c) Button(root.text“計算“,command=cal).pack( ) A. 14 B. 24 C. 12 D. 7 在python語言中表示“x屬于區間[a,b)“的正確表達式是( ) A. a≤x?or?x<b B. a<=x?and?x<b C. a≤x?and?x<b D. a<=x?or?x<b 二、非選擇題(本大題共4小題) 某企業開展“運動打卡動動有獎”活動:若員工在本月累計運動時間30小時以下,獎勵0元;達到30但不足45小時獎勵300元;達到45但不足60小時獎勵450元;60小時及以上獎勵500元。小強用python編寫程序實現相關功能:輸入某員工本月累計運動時間(時),輸出其能獲得的獎勵金額。 實現上述功能的程序如下,請在劃線處填入合適的代碼。 t=int(input(“請輸入您本月累計運動時間(時):”)) ift<0: print(“輸入錯誤”) else: ift<30: ① ______ elift<45: m=300 ② ______ m=450 else: m=500 print(“您的獎勵是:”,m) 當輸入“-1”時,輸出信息為 ______ (選填,填字母:A.輸入錯誤/B.您的獎勵是:0/C.您的獎勵是:500) 密碼強度檢測。編寫python程序,實現如下功能:輸入要檢測的密碼,輸出密碼強度結果。密碼字符分為數字字符、字母和其他符號三類。密碼強度的檢測方法為:若密碼位數少于8位,則不進行強度檢測,給出提示“密碼位數不能少于8位,請重新輸入!”。若密碼位數在8位及以上,則進行強度檢測:若密碼字符屬于同一類字符,則密碼強度為“弱”;若密碼字符屬于不同的二類字符,則密碼強度為“中等”;若密碼字符屬于不同的三類字符,則密碼強度為“強”。 若輸入“12abcd5!”,則輸出結果為 ______ (選填,選字母:A.密碼位數不能少于8位,請重新輸入!/B.弱/C.中等/D.強) 實現上述功能的程序如下,請在劃線處填入合適的代碼。 password=input(“請輸入要檢測的密碼:”) ① ______ ifn<8: print(“密碼位數不能少于8位,請重新輸入!”) else: n1=0 n2=0 n3=0 foriinrange(0,n,1): ② ______ if“0”<=ch<=“9”: n1=1 elif“a”<=ch<=“z”or“A”<=ch<=“Z”: n2=1 else: n3=1 ③ ______ ifx==3: print(“強”) elifx==2: print(“中等”) else: print(“弱”) 編寫程序:求50以內所有5的倍數的和。 15.編寫程序:輸入三個同學的成績,然后大到小排列。 答案 1.【答案】A 【解析】while是python的關鍵字,不能作為變量名;s+1中有特殊字符不可以作為變量名;3stu中不可以以數字開頭定義變量名故選:A。 本題考點的知識點是python中定義變量的相關知識。Python 語言的標識符必須以字母、下畫線(_)開頭,后面可以跟任意數目的字母、數字和下畫線(_)。此處的字母并不局限于 26 個英文字母,可以包含中文字符、日文字符等;標識符不能是 Python 關鍵字,但可以包含關鍵字;標識符不能包含空格。 最基本的python變量名的定義,較簡單。 2.【答案】C 【解析】x=y=1是同時為變量x和y賦值;x,y=1,2的結果為x=1,y=2;x=1,2的結果是x=(1,2),選項C,x==1是判斷語句,表示x等于1是否成立的意思故選:C。 本題考查的知識點就是python語言中的賦值語句。在Python語言里面,=(等號)就是賦值符號,賦值,把數據的值,賦予變量。即將等號右邊的值賦值給左邊的變量。 理解賦值與判斷的區別。 3.【答案】D 【解答】 A.布爾型用于表示真(對)或假(錯),A錯誤; B.浮點型,即帶小數點的數字都稱為浮點數,B錯誤; C.整型用于執行加( + )減( - )乘( * )除( / )運算;C錯誤; D.字符串能夠靈活表示一串數據,長度大小靈活多變,存儲電話號碼位數較多,故D比較合適. 故選D。 4.【答案】A 【解析】設a=2,b=5,在python中,表達式a>b 值為假;b>3的值為真,那么a>bAndb>3的值為假故選:A。 本題考查的知識點是python中能夠直接處理的數據類型。Python可以處理任意大小的整數,當然包括負整數,在Python程序中,整數的表示方法和數學上的寫法一模一樣,例如:1,100,-8080,0,等等;浮點數也就是小數,之所以稱為浮點數,是因為按照科學記數法表示時,一個浮點數的小數點位置是可變的,比如,1.23x10^9和12.3x10^8是相等的;字符串是以''或''括起來的任意文本,比如'abc','xyz'等等。請注意,''或''本身只是一種表示方式,不是字符串的一部分;布爾值和布爾代數的表示完全一致,一個布爾值只有True、False兩種值,要么是True,要么是False,在Python中,可以直接用True、False表示布爾值(請注意大小寫),也可以通過布爾運算計算出來。布爾值的計算方法需要掌握。 5.【答案】A 【解析】python文件的擴展名是.py。 故選:A。 python文件的擴展名是.py。本題考查python基礎知識。 6.【答案】D A.變量名只能包含字母、數字和下劃線。變量名可以字母或下劃線打頭,但不能以數字打頭,A錯誤; B.變量能存儲的數據很多,包含存儲漢字,在Python中,定義變量是不需要指定數據類型的。但Python本身是有數據類型的,它的數據類型可分為數字型和非數字型,B錯誤; C.數據類型是可以強制轉換的,C錯誤; D.變量被第二次賦值后,會覆蓋原有的數據,D正確. 故選D. 7.【答案】D 【解析】檢測是否滿足(ab+cd)(ab+cd)=abcd=k,需要將ab和cd提取出來,ab=abcd//100,cd=abcd%100。所以第一空填=k//100;第二空判斷(ab+cd)(ab+cd)=k,所以該空填寫(x+y)**2==故選:D。 本題考查的知識點選擇結構if與的相關知識。if語句的標準格式為? ?if? ?條件? ? then??語句1? ?else? ? 語句2?end if,根據這個格式將選項套入試求結果即可。python語言中常見的運算符號有+-*/,此外還有%求余運算、//整除運算,**冪運算,題目要求的是檢測是否滿足(ab+cd)(ab+cd)=abcd。 熟記python中各運算符號,即運算優先級,然后根據程序要求實現的目的來進行選擇語句。 8.【答案】C 【解析】解析:設a=3,b=4,c=5,math.sqrt(b)=2,abs(a-b)=abs(-1)=1,Int(2*a-c/b)=Int(4.75)=4,a**2+b**2-c**2=9+16-25=0,故運算結果中值最大的是Int(2*a-c/b),故選:C。 本題主要考查Python表達式的運算 熟練掌握Python表達式的運算 9.【答案】B 【解答】 代碼就是程序員用開發工具所支持的語言寫出來的源文件,是一組由字符、符號或信號碼元以離散形式表示信息的明確的規則體系; 根據題意,文本框內是一段用Python程序設計語言編寫的源代碼,這段源代碼屬于源程序,故B正確。 10.【答案】A【解析】該程序用來計算c=2*(a+b),如果在第一個文本框中輸入3,第二個文本框中輸入4,然后單擊命令按鈕“計算”后,結果文本框中顯示的內容是c=2*(a+b)=3*(3+4)=14. 故選:A。觀察代碼,實現的是c=2*(a+b)。本題考查python程序的執行。 11.【答案】B 【解析】在python語言中表示“x屬于區間[a,b)“用數學表達式為a<=X<b,同時滿足a和b這個區間內的數字,應該用and來連接。故選:B。 本題考查的是python中的and和or的用法。and 和 or?是python的兩個邏輯運算符,可以使用and和or進行多個條件內容的判斷.and是當and連接的所有的表達式的值為真時,才為真 or是當or連接的所有表達式的值一個為真時,表達式值為真。 簡單的邏輯運算,and和or的用法需要熟練掌握。 12.【答案】【小題1】m=0,elift<60 【小題2】A 【解析】①若員工在本月累計運動時間30小時以下,獎勵0元,所以if<30時,獎金m=0②結合上下文達到45但不足60小時獎勵450元;所以此時應該輸入elift<60,此時m=450;(2)由于m=-1<0不是有效值,故輸出信息應該為“輸入錯誤”故選A。 本題主要考查的就是VB中的解析算法。所謂解析法(analysis algorithm)是指用解析的方法找出表示問題的前提條件與結果之間關系的數學表達式,并通過表達式的計算來實現問題求解。 根據題目要求,分析部分語句表達的意思來填寫語句,題目較易。 13.【答案】【小題1】D 【小題2】n=len(password),ch=password[i],x=n1+n2+n3 【解析】(1)密碼字符分為數字字符、字母和其他符號三類。若輸入“12abcd5!”,屬于不同的三類字符,則密碼強度為“強”。(2)此處取密碼的長度,將其賦給變量n,len( )是返回字符串的長度,故填n=len(password)。(3)ch是取密碼的每一位進行判斷,故此處填ch=password[i]。(4)當出現數字時n1=1,當出現字母時n2=1,當出現其它字符時n3=1,x用來統計有幾類字符,故此處填x=n1+n2+n3。 故答案為:(1)D(2)①n=len(password)②ch=password[i]③x=n1+n2+n3 len( )是返回字符串的長度。for循環計數循環。程序為利用input( )輸入要檢測的密碼,后面當n<8提示太短,則第一個空處填n的賦值語句。不短的話,分別給n1、n2、n3賦初值為0.之后for循環n次。循環體中,下面判斷ch在0到9范圍內,則n1賦值為1,則第二個空應該是給ch賦值,為ch=password[i]。x為幾判斷是等級,可見x用來統計有幾類字符,所以x=n1+n2+n3。 本題考查Python程序的執行和調試。 14. 【答案】#求50以內所有5的倍數的和i=1sum=0while i<=50:#從i循環到50? ? if i%5==0:#判斷變量i是否能被5整除? ? ? ?sum=sum+i#求50以內所有5的倍數的和? ? i=i+1#循環控制變量print(sum)#循環結束,輸出和。 【解析】本題主要考查程序的編寫熟練掌握循環結構與選擇結構 15. 【答案】解析:#輸入三個同學的成績,然后大到小排列s1=float(input(“請輸入第一位同學的成績:“)s2=float(input(“請輸入第二位同學的成績:“) s3=float(input(“請輸入第三位同學的成績:“) if? s1-s2>1e-6:#第一個和第二個進行比較,然后交換兩個數的值? ? tmp=s1? ? s1=s2? ? s2=tmpif? s1-s3>1e-6:#第一個和第三個進行比較,然后交換兩個數的值? ? tmp=s1? ? s1=s3? ? s3=tmpif? s2-s3>1e-6:#第一個和第二個進行比較,然后交換兩個數的值? ? tmp=s2? ? s2=s3? ? s3=tmpprint(s1,s2,s3)#輸出排序后的結果【解析】本題主要考查if語句及變量的交換熟練掌握if語句的相關知識 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫