資源簡介 粵教版(2019)高中信息技術必修1第四章 章末復習試題(一)一、選擇題1.for i in range(2,11,2):print(i,end=" ")上面程序運行結果是( )A.2 4 6 8 9 B.2 3 4 5 6 C.2 4 6 8 10 D.2 4 5 8 102.c=0for i in range(1,26):If i%2==0:c=c+1Print(c)上面程序運行結果是( )A.12 B.13 C.14 D.153.sum=0for i in range(1,11):sum+=iprint(“the result:”,sum)上面程序運行結果是( )A.53 B.54 C.55 D.564.以下python程序段運行后,y的值是( )x=3if x > 3 :y=2*xelse :y=3*x+1print(y)A.10 B.5 C.25 D.265.(2020高一上·昆明期末)有python程序如下:S=input( )print(S * 3)運行后通過鍵盤輸入6,則運算結果是( )A.666 B.SSS C.18 D.S*36.以下python程序段運行后,s的值是( )n=0s=0while s<=10:n=n+3s=s+nprint(s)A.0 B.3 C.18 D.307.在編寫python程序時縮進的作用是( )。A.讓程序更美觀 B.只在for循環中使用C.只在if語句中使用 D.用來界定代碼塊8.下列與數學表達式 對應的python表達式,正確的是( )。A.( - b + math. sqrt (b * b – 4 * a * c)) /a * aB.- b + math. sqrt (b * b – 4 * a * c) /2*aC.( -b + math. sqrt (b * 2 – 4 * a * c)) /(2 * a)D.( -b + math. sqrt ( b * b – 4 * a * c)) / (2 * a)9.在下面的python程序中,變量b和c的值為( )。a=6a=b=c=8print(b, c)A.b為6,c為6 B.b為6,c為8 C.b為8,c為8 D.b為8,c為610.運行Python程序的過程中出現了如下圖錯誤提示,原因是( )。A.變量名51study太長B.應該寫成"chinese" =51studyC.“chinese”應該寫成“china s”D.變量名51study不符合python語言規范,變量名不能以數字開頭11.以下python程序段運行后,x和st的值分別是( )x=123+678st="123"+"678"A.123678 "123678" B.123678 "801"C.801 "123678" D.801 "801"二、簡答題12.利用for循環,分別計算1--100中奇數的和、偶數的和。sum1=0sum2=0for i in range(1,100):if i%2==0:sum1+=ielse:sum2+=iprint(sum1,sum2)13.編寫一個程序,它將找到所有這些數字,可被7整除,但不是5的倍數,2000年至3200年(包括在內)。得到的數字應按逗號分隔的順序打印在一行上。提示:考慮使用range(#begin,#end)三、操作題14.若兩個素數之差為2,則該對素數稱為雙胞胎數,如3,5就是一對雙胞胎數。編寫python程序,實現如下功能:輸入n的值,統計顯示n以內的所有雙胞胎數。程序運行界面如圖所示:實現上述功能的程序如下,請在劃線處填入合適的代碼。def isprime(x):for i in range(2,x):If :return Falsereturn Truen=int(input(“請輸入一個正整數n:”))c=0k=3while k<=n-2:if isprime(k) and :print(k,k+2) k=k+1print(“共有”+str(c)+“對雙胞胎數”)答案解析部分1.【答案】C【知識點】循環結構語句及程序實現【解析】【解答】變量i的范圍是2~10,每次遞增2,程序的運行結果是2 4 6 8 10。故答案選C。【分析】本題考查的是Python循環結構。在Python中,for語句的格式為:for <變量> in <序列>:<循環體>2.【答案】A【知識點】運算符、基本運算與表達式;循環結構語句及程序實現【解析】【解答】變量i的范圍是1~25,當i是偶數時,c遞增1,偶數有:2、4、6、8、10、12、14、16、18、20、22、24,程序運行完,c=12。故答案選A。【分析】本題考查的是Python程序的執行。range函數由三個參數(起始值、終值、步長值)來決定序列中元素的個數和范圍。若起始值缺省,則默認值為0。步長值是序列中的每個元素之間的差,若缺省,則默認值為1。3.【答案】C【知識點】循環結構語句及程序實現【解析】【解答】變量i的范圍是1~10,sum=0,循環體是sum=sum+i。程序運行結果是sum=sum+i=0+1+2+3+4+5+6+7+8+9+10=55。故答案選C。【分析】本題主要考查的是Python中的for循環程序的執行。在Python中,for語句的格式為:for <變量> in <序列>:<循環體>4.【答案】A【知識點】分支結構語句及程序實現【解析】【解答】x=3,不滿足x>3,執行y=3*x+1=10。故答案選A。【分析】本題考查的是Python分支程序的執行。if語句一般格式是:if<條件>:<語句塊1>else:<語句塊2>5.【答案】A【知識點】程序的調試及運行;常用標準函數【解析】【解答】通過鍵盤輸入6,故S=“6”,輸出S*3=“666”,運算結果是666。故答案選A。【分析】本題考查Python程序的執行。input函數格式:input([prompt1])。功能:讀取從鍵盤輸入的字符串,若給定提示字符串(參數prompt),則直接輸出。6.【答案】C【知識點】循環結構語句及程序實現【解析】【解答】n=0,s=0,循環條件是s<=10,則循環結束時,n=n+3=0+3+3+3=9,s=s+n=0+3+6+9=18。程序結束后,s的值是18。故答案選C。【分析】本題考查的是Python中while循環程序的執行。while循環在執行時,首先會判斷條件是否為真,如果條件為真,執行一次循環體,再次判斷條件是否為真,如果仍為真,那么再執行一次循環體,以此類推,直到條件為假時退出while語句。7.【答案】D【知識點】語句注釋及縮進【解析】【解答】python中的縮進可以使得代碼非常整齊規范,賞心悅目,提高可讀性,因此作用是用來界定代碼塊的。故答案選D。【分析】本題考查的是Python語句中的縮進。在Python中,要求屬于同一作用域中的各行代碼,它們的縮進量必須一致。8.【答案】D【知識點】運算符、基本運算與表達式【解析】【解答】sqrt( )求平方根,乘法運算符為“*”,除法為“/”,嵌套函數均使用小括號。 表示為( -b + math. sqrt ( b * b – 4 * a * c)) / (2 * a)。故答案選D。【分析】本題考查的是Python表達式。表達式書寫時不可以省略乘號,運算符不可以相鄰;表達式必須書寫在同一基準,不可以出現上下標;按照各種運算符的優先級別來計算;表達式中只可以使用圓括號來表示優先級,且要成對出現。9.【答案】C【知識點】常量、變量及變量的賦值【解析】【解答】程序分析:將6賦值給a,此時a為6;將8賦值給c,此時c為8;將c復制給b,此時b的值即為c的值,b為8;將b賦值給a,此時a即為b的值,a為8。最終,a為8,b為8,c為8。故答案選C。【分析】本題主要考查賦值語句。賦值語句的作用是把等號右邊的表達式的計算結果存儲到等號坐邊指定的變量中,或存放到某個對象指定的屬性中。10.【答案】D【知識點】程序的調試及運行【解析】【解答】報錯內容是“語法錯誤:無效語法”。程序中的變量名51study是不合法的,數字不能作為變量名的開頭。故答案選D。【分析】本題考查的是程序的調試。Python常見的異常:異常 描述NameError 嘗試訪問一個沒有申明的變量ZeroDivisionError 除數為0SyntaxError 語法錯誤IndexError 索引超出序列范圍KeyError 請求一個不存在的字典關鍵字IOError 輸入輸出錯誤(比如你要讀的文件不存在)AttributeError 嘗試訪問未知的對象屬性ValueError 數值錯誤ValueError 傳給函數的參數類型不正確,比如給int()函數傳入字符串形AssertionError 斷言錯誤11.【答案】C【知識點】運算符、基本運算與表達式【解析】【解答】x= 123 + 678=801,st = "123" + "678"= "123678" (字符串類型相加等于字符串的拼接)。故答案選C。【分析】本題主要考查的是Python程序的執行。12.【答案】代碼解析注釋如下:sum1=0 #定義sum1存儲偶數和,并賦值sum1=0sum2=0 #定義sum2存儲偶數和,并賦值sum2=0for i in range(1,100): #通過遍歷1至100的所有整數,分別計算1至100中的偶數和、奇數和if i%2==0: #若i是偶數,則把偶數加到sum1中sum1+=ielse: #若i是奇數,則把奇數加到sum2中sum2+=iprint(sum1,sum2) #輸出結果,偶數和sum1的值為2550,奇數和sum2的值為2500【知識點】分支結構語句及程序實現;循環結構語句及程序實現【解析】【解答】程序算法用自然語言可以表示為:定義兩個變量并賦值sum1,sum2;遍歷1-100的所以整數:如果遍歷的數為偶數,則將該偶數添累加到sum1中,如果遍歷的數為奇數,則將該奇數累加到sum2中;遍歷完成之后,最后輸出1--100偶數的和sum1,1--100中奇數的和sum2。【分析】本題主要考查的是Python的循環結構和判斷結構。13.【答案】l=[]for i in range(2000,3201):if (i%7==0)and (i%5!=0):l.append(str(i))print (','.join(1))【知識點】分支結構語句及程序實現;循環結構語句及程序實現【解析】【分析】本題考查的是程序的編寫。程序的編寫難度較大,使用range( )定義i的取值范圍,然后利用if判斷語句可被7整除,但不是5的倍數,最后利用join函數打印出結果即可。14.【答案】x%i==0或x//i==x/i或其他等價表達式;isprime(k+2)或isprime(k+2)==True;c=c+1或c+=1【知識點】分支結構語句及程序實現;循環結構語句及程序實現【解析】【解答】第一空:isprime(x)函數判斷x是不是素數,此處通過for循環判斷(用x依次除i,看能不能整除,i的范圍時從2~x),故答案為:x%i==0或x//i==x/i。第二空:此處判斷相差2的兩個數是不是素數,若是,則輸出這兩個數,故答案為:isprime(k+2)或isprime(k+2)==True。第三空:c用來統計雙胞胎數的對數,若滿足是雙胞胎數的條件,故答案為:c=c+1或c+=1。【分析】本題主要考查的是Python程序的執行與調試。1 / 1粵教版(2019)高中信息技術必修1第四章 章末復習試題(一)一、選擇題1.for i in range(2,11,2):print(i,end=" ")上面程序運行結果是( )A.2 4 6 8 9 B.2 3 4 5 6 C.2 4 6 8 10 D.2 4 5 8 10【答案】C【知識點】循環結構語句及程序實現【解析】【解答】變量i的范圍是2~10,每次遞增2,程序的運行結果是2 4 6 8 10。故答案選C。【分析】本題考查的是Python循環結構。在Python中,for語句的格式為:for <變量> in <序列>:<循環體>2.c=0for i in range(1,26):If i%2==0:c=c+1Print(c)上面程序運行結果是( )A.12 B.13 C.14 D.15【答案】A【知識點】運算符、基本運算與表達式;循環結構語句及程序實現【解析】【解答】變量i的范圍是1~25,當i是偶數時,c遞增1,偶數有:2、4、6、8、10、12、14、16、18、20、22、24,程序運行完,c=12。故答案選A。【分析】本題考查的是Python程序的執行。range函數由三個參數(起始值、終值、步長值)來決定序列中元素的個數和范圍。若起始值缺省,則默認值為0。步長值是序列中的每個元素之間的差,若缺省,則默認值為1。3.sum=0for i in range(1,11):sum+=iprint(“the result:”,sum)上面程序運行結果是( )A.53 B.54 C.55 D.56【答案】C【知識點】循環結構語句及程序實現【解析】【解答】變量i的范圍是1~10,sum=0,循環體是sum=sum+i。程序運行結果是sum=sum+i=0+1+2+3+4+5+6+7+8+9+10=55。故答案選C。【分析】本題主要考查的是Python中的for循環程序的執行。在Python中,for語句的格式為:for <變量> in <序列>:<循環體>4.以下python程序段運行后,y的值是( )x=3if x > 3 :y=2*xelse :y=3*x+1print(y)A.10 B.5 C.25 D.26【答案】A【知識點】分支結構語句及程序實現【解析】【解答】x=3,不滿足x>3,執行y=3*x+1=10。故答案選A。【分析】本題考查的是Python分支程序的執行。if語句一般格式是:if<條件>:<語句塊1>else:<語句塊2>5.(2020高一上·昆明期末)有python程序如下:S=input( )print(S * 3)運行后通過鍵盤輸入6,則運算結果是( )A.666 B.SSS C.18 D.S*3【答案】A【知識點】程序的調試及運行;常用標準函數【解析】【解答】通過鍵盤輸入6,故S=“6”,輸出S*3=“666”,運算結果是666。故答案選A。【分析】本題考查Python程序的執行。input函數格式:input([prompt1])。功能:讀取從鍵盤輸入的字符串,若給定提示字符串(參數prompt),則直接輸出。6.以下python程序段運行后,s的值是( )n=0s=0while s<=10:n=n+3s=s+nprint(s)A.0 B.3 C.18 D.30【答案】C【知識點】循環結構語句及程序實現【解析】【解答】n=0,s=0,循環條件是s<=10,則循環結束時,n=n+3=0+3+3+3=9,s=s+n=0+3+6+9=18。程序結束后,s的值是18。故答案選C。【分析】本題考查的是Python中while循環程序的執行。while循環在執行時,首先會判斷條件是否為真,如果條件為真,執行一次循環體,再次判斷條件是否為真,如果仍為真,那么再執行一次循環體,以此類推,直到條件為假時退出while語句。7.在編寫python程序時縮進的作用是( )。A.讓程序更美觀 B.只在for循環中使用C.只在if語句中使用 D.用來界定代碼塊【答案】D【知識點】語句注釋及縮進【解析】【解答】python中的縮進可以使得代碼非常整齊規范,賞心悅目,提高可讀性,因此作用是用來界定代碼塊的。故答案選D。【分析】本題考查的是Python語句中的縮進。在Python中,要求屬于同一作用域中的各行代碼,它們的縮進量必須一致。8.下列與數學表達式 對應的python表達式,正確的是( )。A.( - b + math. sqrt (b * b – 4 * a * c)) /a * aB.- b + math. sqrt (b * b – 4 * a * c) /2*aC.( -b + math. sqrt (b * 2 – 4 * a * c)) /(2 * a)D.( -b + math. sqrt ( b * b – 4 * a * c)) / (2 * a)【答案】D【知識點】運算符、基本運算與表達式【解析】【解答】sqrt( )求平方根,乘法運算符為“*”,除法為“/”,嵌套函數均使用小括號。 表示為( -b + math. sqrt ( b * b – 4 * a * c)) / (2 * a)。故答案選D。【分析】本題考查的是Python表達式。表達式書寫時不可以省略乘號,運算符不可以相鄰;表達式必須書寫在同一基準,不可以出現上下標;按照各種運算符的優先級別來計算;表達式中只可以使用圓括號來表示優先級,且要成對出現。9.在下面的python程序中,變量b和c的值為( )。a=6a=b=c=8print(b, c)A.b為6,c為6 B.b為6,c為8 C.b為8,c為8 D.b為8,c為6【答案】C【知識點】常量、變量及變量的賦值【解析】【解答】程序分析:將6賦值給a,此時a為6;將8賦值給c,此時c為8;將c復制給b,此時b的值即為c的值,b為8;將b賦值給a,此時a即為b的值,a為8。最終,a為8,b為8,c為8。故答案選C。【分析】本題主要考查賦值語句。賦值語句的作用是把等號右邊的表達式的計算結果存儲到等號坐邊指定的變量中,或存放到某個對象指定的屬性中。10.運行Python程序的過程中出現了如下圖錯誤提示,原因是( )。A.變量名51study太長B.應該寫成"chinese" =51studyC.“chinese”應該寫成“china s”D.變量名51study不符合python語言規范,變量名不能以數字開頭【答案】D【知識點】程序的調試及運行【解析】【解答】報錯內容是“語法錯誤:無效語法”。程序中的變量名51study是不合法的,數字不能作為變量名的開頭。故答案選D。【分析】本題考查的是程序的調試。Python常見的異常:異常 描述NameError 嘗試訪問一個沒有申明的變量ZeroDivisionError 除數為0SyntaxError 語法錯誤IndexError 索引超出序列范圍KeyError 請求一個不存在的字典關鍵字IOError 輸入輸出錯誤(比如你要讀的文件不存在)AttributeError 嘗試訪問未知的對象屬性ValueError 數值錯誤ValueError 傳給函數的參數類型不正確,比如給int()函數傳入字符串形AssertionError 斷言錯誤11.以下python程序段運行后,x和st的值分別是( )x=123+678st="123"+"678"A.123678 "123678" B.123678 "801"C.801 "123678" D.801 "801"【答案】C【知識點】運算符、基本運算與表達式【解析】【解答】x= 123 + 678=801,st = "123" + "678"= "123678" (字符串類型相加等于字符串的拼接)。故答案選C。【分析】本題主要考查的是Python程序的執行。二、簡答題12.利用for循環,分別計算1--100中奇數的和、偶數的和。sum1=0sum2=0for i in range(1,100):if i%2==0:sum1+=ielse:sum2+=iprint(sum1,sum2)【答案】代碼解析注釋如下:sum1=0 #定義sum1存儲偶數和,并賦值sum1=0sum2=0 #定義sum2存儲偶數和,并賦值sum2=0for i in range(1,100): #通過遍歷1至100的所有整數,分別計算1至100中的偶數和、奇數和if i%2==0: #若i是偶數,則把偶數加到sum1中sum1+=ielse: #若i是奇數,則把奇數加到sum2中sum2+=iprint(sum1,sum2) #輸出結果,偶數和sum1的值為2550,奇數和sum2的值為2500【知識點】分支結構語句及程序實現;循環結構語句及程序實現【解析】【解答】程序算法用自然語言可以表示為:定義兩個變量并賦值sum1,sum2;遍歷1-100的所以整數:如果遍歷的數為偶數,則將該偶數添累加到sum1中,如果遍歷的數為奇數,則將該奇數累加到sum2中;遍歷完成之后,最后輸出1--100偶數的和sum1,1--100中奇數的和sum2。【分析】本題主要考查的是Python的循環結構和判斷結構。13.編寫一個程序,它將找到所有這些數字,可被7整除,但不是5的倍數,2000年至3200年(包括在內)。得到的數字應按逗號分隔的順序打印在一行上。提示:考慮使用range(#begin,#end)【答案】l=[]for i in range(2000,3201):if (i%7==0)and (i%5!=0):l.append(str(i))print (','.join(1))【知識點】分支結構語句及程序實現;循環結構語句及程序實現【解析】【分析】本題考查的是程序的編寫。程序的編寫難度較大,使用range( )定義i的取值范圍,然后利用if判斷語句可被7整除,但不是5的倍數,最后利用join函數打印出結果即可。三、操作題14.若兩個素數之差為2,則該對素數稱為雙胞胎數,如3,5就是一對雙胞胎數。編寫python程序,實現如下功能:輸入n的值,統計顯示n以內的所有雙胞胎數。程序運行界面如圖所示:實現上述功能的程序如下,請在劃線處填入合適的代碼。def isprime(x):for i in range(2,x):If :return Falsereturn Truen=int(input(“請輸入一個正整數n:”))c=0k=3while k<=n-2:if isprime(k) and :print(k,k+2) k=k+1print(“共有”+str(c)+“對雙胞胎數”)【答案】x%i==0或x//i==x/i或其他等價表達式;isprime(k+2)或isprime(k+2)==True;c=c+1或c+=1【知識點】分支結構語句及程序實現;循環結構語句及程序實現【解析】【解答】第一空:isprime(x)函數判斷x是不是素數,此處通過for循環判斷(用x依次除i,看能不能整除,i的范圍時從2~x),故答案為:x%i==0或x//i==x/i。第二空:此處判斷相差2的兩個數是不是素數,若是,則輸出這兩個數,故答案為:isprime(k+2)或isprime(k+2)==True。第三空:c用來統計雙胞胎數的對數,若滿足是雙胞胎數的條件,故答案為:c=c+1或c+=1。【分析】本題主要考查的是Python程序的執行與調試。1 / 1 展開更多...... 收起↑ 資源列表 粵教版(2019)高中信息技術必修1第四章 章末復習試題(一)(學生版).docx 粵教版(2019)高中信息技術必修1第四章 章末復習試題(一)(教師版).docx 縮略圖、資源來源于二一教育資源庫