中文字幕精品无码一区二区,成全视频在线播放观看方法,大伊人青草狠狠久久,亚洲一区影音先锋色资源

浙江省溫州市2020-2021學年高一下學期信息技術期末考試試卷

資源下載
  1. 二一教育資源

浙江省溫州市2020-2021學年高一下學期信息技術期末考試試卷

資源簡介

浙江省溫州市2020-2021學年高一下學期信息技術期末考試試卷
一、選擇題
1.(2021高一下·溫州期末)①設計算法,②描述算法,③調試運行程序,④抽象建模,⑤編寫程序。從以上這些過程選出屬于用計算機編程解決問題的一般過程,并正確排序后的選項是(  )
A.④①⑤② B.①②③④ C.④①②⑤ D.④①⑤③
2.(2019高二下·湖州月考)某算法的部分流程圖如圖所示,執行這部分流程后,變量a,b的值分別是(  )
A.3,3 B.3,4 C.6,6 D.7,11
3.(2021高一下·溫州期末)關于python程序設計語言,下列說法不正確的是(  )。
A.python源文件以***.py為擴展名
B.python的默認交互提示符是:>>>
C.python只能在文件模式中編寫代碼
D.python具有豐富和強大的模塊
4.(2021高一下·溫州期末)語句print( 'abd' > 'abc' and 20%6 = = 10%4 )的結果為(  )
A.False B.True C.3 D.編譯錯誤
5.(2021高一下·溫州期末)下列可以作為python變量名的是(  )
A.'a1' B.6key C.False D.i_f
6.(2021高一下·溫州期末)已知變量x=5,執行語句x*=x+3,變量x的值為(  )
A.8 B.13 C.28 D.40
7.(2021高一下·溫州期末)表達式12 % 9 和 –12% 9 的結果分別是(  )
A.1、6 B.3、–3 C.1、–3 D.3、6
8.(2021高一下·溫州期末)有如下python程序段:
a="Doing is better than saying ."
print(r"\n"+a[ :15])
該程序運行后,輸出的結果是(  )
A.直接輸出:' \nDoing is better '
B.直接輸出:\nDoing is better th
C.直接輸出:\nDoing is better
D.先換行,然后在新的一行中輸出:Doing is better
9.(2021高一下·溫州期末)已知列表:s1=[1,['a','b'],True],執行以下程序:
s1=[1,['a','b'],True]
s1[0]=s1[0]*2
s1.append(('apple','banana'))
print(s1[1: ])
執行后輸出的結果為:(  )
A.[True, ('apple', 'banana')]
B.[ ['a', 'b'], True, ('apple', 'banana')]
C.[2,['a', 'b'], True, 1, ['a', 'b'], True]
D.[1, ['a', 'b'], True, ('apple', 'banana')]
10.(2021高一下·溫州期末)已知字典dict1={1:2, 2:(1,2), (1,2):'b', 'b':'b1','b1':'b2' },要得到字典中的值'b',下列方法可行的是(  )
A.dict1[(1,2)] B.dict1{'b'} C.dict1[3] D.dict1['b1']
11.(2021高一下·溫州期末)小王編寫了出租車收費的python程序,代碼如下:
s1=float(input('請輸入行駛路程(公里):'))
if s1<=3:
f=10
elif s1<=10:
f=10+2.5*(s1-3)
else:
f=27.5+3.5*(s1-10)
print(f)
要測試所有分支程序代碼是否正確,以下測試數據中,最恰當的一組是(  )
A.3,8 B.-1,5,12 C.1,6,20 D.3,12,20
12.(2021高一下·溫州期末)有下面一段程序:
p = [ 2, 1, 3, 4, 5 ]
c = 0
for i in range( 2, 6, 2 ):
if p[ i - 2 ] + p[ i -1 ] == p[ i ]:
c += 1
print( c )
執行該段程序后,計算機顯示的是(  )
A.1 B.2 C.3 D.4
13.(2021高一下·溫州期末)以下程序導入python的math模塊,使用math模塊下的函數對輸入的實數進行向下取整,具體代碼如下:

n = input("請輸入一個實數:")

print(n3)
請完善該代碼,上述劃線處可選的語句為:(  )
A.① import math ;② n3=math.floor(float(n)) ;
B.① import math;② n3=floor(float(n)) ;
C.① import math ;② n3=math.sqrt(float(n)) ;
D.① from math import ceil ;② n3=ceil(float(n)) ;
14.(2021高一下·溫州期末)小林編寫一段文件讀寫操作代碼,文件如圖,代碼段如下:
file=open('ceshi.txt','w')
file.write("python is a programming language.")
file.close(  )
file=open('ceshi.txt','r')
print(file.read(  ))
該代碼段運行后,輸出的結果為(  )
A.IA Distributed System Based on Python.
B.python is a programming language.
C.IA Distributed System Based on Python. python is a programming language.
D.程序編譯錯誤,不會輸出結果
15.(2021高一下·溫州期末)執行如下代碼:
c=0
num=[1,2,3,4]
def fun(num):
global c
for i in range( 5 ) :
c+=1
num.append(c)
return num
print(fun(num), num ,c)
則程序執行后輸出(  )
A.[1,2,3,4] [1,2,3,4]
B.[1, 2, 3, 4, 5] [1,2,3,4] 0
C.[1, 2, 3, 4, 5] [1,2,3,4] 5
D.[1, 2, 3, 4, 5] [1, 2, 3, 4, 5] 5
二、操作題
16.(2021高一下·溫州期末)廣場上有許多(有數百人)小朋友在玩分組游戲,當他們分成三人一組時,發現最后多出兩個;當他們分成五人一組時,發現最后多出三個;當他們分成七人一組時,發現最后多出兩個。編寫程序求出這些小朋友的可能人數。
實現上述功能的程序如下,請在程序劃線處填入合適的代碼。
   
a=[ ]
for i in range(100,1000):
if   :
a.append(i)
total + = 1
print("這群小朋友總的人數有:")
for j in range(len(a)):
print(   ,end='、')
print('')
print('可能情況數為:',total,'種')
17.(2021高一下·溫州期末)若兩個素數之差為
2,則該對素數稱為雙胞胎數,如 3,5 就是一對雙胞胎數。編寫 python 程序,實現如下功能:輸入 n 的值,統計顯示 n 以內的所有雙胞胎數。程序運行界面如圖所示:
實現上述功能的程序如下,請在劃線處填入合適的代碼。
import math
def isprime(x):
   
for i in range(2,int(math.sqrt(x))+1):
if x % i = = 0 :
f=False
return f
n=int(input("請輸入一個正整數n:"))
c=0
k=3
while k < = n-2:
if isprime( k ) and    :
c + = 1
print("第"+ str( c ) +"對雙胞胎數:", k ,'和',k+2)
   
print("共有"+str(c)+"對雙胞胎數")
18.(2021高一下·溫州期末)小王編寫了“字符串縮寫”程序,實現如下功能:
1)輸入一串由英文字母和數字組成的字符串,
2)如果字符串有連續字符構成的升序段(后面字符的ASCII值比前面的字符的ASCII值大1),則把升序段縮寫成由第一個字符加上“ — ”和最后一個字符組成的新字符段,
3)例如:字符串為“abcdf12345becomexy”,則縮寫成“a-df1-5becomex-y”。
程序運行時,輸入一串字符,輸出縮寫的字符串,程序運行效果如下圖所示:
實現上述功能的程序如下,請在程序劃線處填入合適的代碼。
s=input("請輸入字符串s:")
   
flag = False
result=" "
for i in range( 0 , k-1):
if     :
result=result+s[i]+"-"
flag = True
elif ord(s[i]) ! = ord(s[i+1])-1:
result=result+s[i]
   
result=result + s[i+1]
print("縮寫后的字符串為:",result)
答案解析部分
1.【答案】D
【知識點】計算機解決問題的過程
【解析】【解答】計算機編程解決問題的一般過程:④抽象建模①設計算法⑤編寫程序③調試運行程序。故答案選D。
【分析】本題考查的是計算機解決問題的過程。
2.【答案】D
【知識點】算法的常用表示方法;算法的控制結構
【解析】【解答】分析程序,a=2,b=1,b<5,執行yes語句,a=a+b=3,b=a+b=4;b<5,執行yes語句,a=a+b=7,b=a+b=11;b>5,程序結束,故答案選D。
【分析】此題主要考查循環結構流程圖的應用。流程圖描述算法的方法:流程圖使用各種特定的圖形來描述算法,其中用圓角矩形表示開始和結束,用矩形框表示賦值和處理框,用菱形表示判斷框,如果流程線沒有回到流程框上面,就是選擇結構,如果流程線回到菱形框上面就是循環結構,用箭頭表示走向。
3.【答案】C
【知識點】計算機語言
【解析】【解答】python源文件以***.py為擴展名,python的默認交互提示符是:>>>,python能在文件模式中編寫代碼,也能在交互模式中編寫代碼,python具有豐富和強大的模塊。故答案選C。
【分析】本題考查的是python程序設計語言。Python是一種跨平臺、開源、解釋型的高級編程語言。Python語言有三個方面的主要特點:語法簡潔、粘性擴展、類庫豐富。
4.【答案】B
【知識點】運算符、基本運算與表達式
【解析】【解答】 'abd' > 'abc' 值為True,20%6==10%4值為True,邏輯運算符and兩邊值均為真時值才為真,否則值為假。 'abd' > 'abc' and 20%6 = = 10%4值為True。故答案選B。
【分析】本題主要考查的是Python表達式的運算。運算符優先級別排序:算術運算符>=字符運算符>關系運算符>邏輯運算符。
5.【答案】D
【知識點】常量、變量及變量的賦值
【解析】【解答】選項A:變量名不能有 ' ;選項B:變量不能以數字開頭;選項C:變量名不能是保留字;選項D:i_f可以作為python變量名。故答案選D。
【分析】本題考查的是Python變量的命名。Python中的變量名只能由大寫字母、數字、下劃線組成,不能以數字開頭,字母區分大小寫,不能使用保留字。
6.【答案】D
【知識點】運算符、基本運算與表達式
【解析】【解答】語句x*=x+3等價于x=x*(x+3)=5*(5+3)=40。故答案選D。
【分析】本題考查的是Python表達式的運算。
7.【答案】D
【知識點】運算符、基本運算與表達式
【解析】【解答】12除9商1余3,-12除9商-2余6。故答案選D。
【分析】本題考查的是Python表達式的運算。%是取余運算。
8.【答案】C
【知識點】基本數據結構;基本語句
【解析】【解答】r標識 \ 后面的字符不轉義,a[ :15]表示從a的右邊往左第15位到最左邊全部輸出。該程序運行后,輸出的結果是直接輸出:\nDoing is better。故答案選C。
【分析】本題考查的是列表及輸出語句的應用。列表的切片操作:
格式:[start: end: step]。
功能:返回從索引位置start到索引位置end且以step為步數的子序列(不包含索引位置end的元素)。
9.【答案】D
【知識點】基本數據結構
【解析】【解答】前三行語句執行完,列表s1的元素值分別是2,['a', 'b'], True ,('apple', 'banana'),最后執行語句print(s1[1: ]),輸出列表s1除去第一個元素剩下的所有元素,故執行后輸出的結果為:[ ['a', 'b'], True, ('apple', 'banana')]。故答案選B。
【分析】本題主要考查的是Python列表。列表是包含0個或多個對象的有序序列,用方括號“[ ]”括起來,并用逗號分隔其中的對象(元素)。可以通過索引訪問列表中特定位置的元素。
列表的切片操作:
格式:[start: end: step]。
功能:返回從索引位置start到索引位置end且以step為步數的子序列(不包含索引位置end的元素)。
10.【答案】A
【知識點】基本數據結構
【解析】【解答】由字典dict1={1:2, 2:(1,2), (1,2):'b', 'b':'b1','b1':'b2' }可知,'b'的鍵是(1,2)。要得到字典中的值'b',可以通過語句dict1[(1,2)]。故答案選A。
【分析】本題主要考查的是python中字典的應用。字典是Python中唯一內建的映射類型。字典中沒有特殊的順序,但都是存儲在一個特定的鍵(key)下面,鍵可以是數字,字符串,甚至是元組。
11.【答案】C
【知識點】分支結構語句及程序實現
【解析】【解答】本題程序采用的是條件分支結構,第一個條件是s1<=3,第二個條件是310。最恰當的一組測試數據是1,6,20。故答案選C。
【分析】本題考查的是對Python條件分支結構的分析。
12.【答案】A
【知識點】分支結構語句及程序實現;循環結構語句及程序實現
【解析】【解答】變量i的取值有2、4,當i=2時,滿足if條件,c=c+1=1。執行該段程序后,計算機顯示的是1。故答案選A。
【分析】本題考查的是對Python程序的分析。
13.【答案】A
【知識點】模塊
【解析】【解答】導入python的math模塊,使用import關鍵字,①填 import math;floor() 返回數字的下舍整數,input接收的數據類型是str類型,需要將其轉換為浮點型,②填n3=math.floor(float(n)) 。故答案選A。
【分析】本題考查的是Python模塊導入。import語句或from-import語句可以將函數所在的模塊導入。
14.【答案】B
【知識點】程序的調試及運行;基本語句
【解析】【解答】首先打開ceshi.txt文件進行寫操作,寫入python is a programming language.會覆蓋之前的內容。運行該代碼段后,輸出的結果為python is a programming language.。故答案選B。
【分析】本題考查的是Python文件讀寫操作。open(  )是文件打開函數,read(  )、write(  )是文件讀寫函數。
15.【答案】D
【知識點】過程與自定義函數;循環結構語句及程序實現
【解析】【解答】fun函數接收一個列表num,循環結束后c的值為5,將c追加到列表num中并返回num,num=[1,2,3,4]。fun(num)執行完,返回值num為[1, 2, 3, 4, 5],程序執行后輸出程序執行后輸出[1, 2, 3, 4, 5] [1, 2, 3, 4, 5] 5。故答案選D。
【分析】本題考查的是python循環結構、列表及函數的應用。append命令是將整個對象加在列表末尾。
16.【答案】total=0;i%3 == 2 and i%5 == 3 and i%7 == 2;a[j]
【知識點】循環結構語句及程序實現;基本數據結構
【解析】【解答】第一空:變量total用來統計有多少種情況,初始值為0,答案為:total=0。
第二空:當他們分成三人一組時,發現最后多出兩個;當他們分成五人一組時,發現最后多出三個;當他們分成七人一組時,發現最后多出兩個,即if判斷條件為i%3 == 2 and i%5 == 3 and i%7 == 2,滿足if條件時,將該值加到列表a中,答案為:i%3 == 2 and i%5 == 3 and i%7 == 2。
第三空:最后通過for循環輸出所有可能的數,用變量j控制,答案為:a[j]。
【分析】本題主要考查的是循環結構和列表的應用。append命令是將整個對象加在列表末尾。
17.【答案】f = True;isprime(k+2);k=k+1 或 k+=1 或 k=k+2 或 k+=2
【知識點】過程與自定義函數;模塊
【解析】【解答】第一空:isprime(x)用來判斷x是不是素數,通過用x整除2~int(math.sqrt(x)),如果余數為0則表明該數不是素數,賦值f為假退出循環,f的初值為True,故填:f = True;
第二空:若兩個素數之差為 2,則該對素數稱為雙胞胎數,此處判斷相差為2的兩個數是不是素數,故填:isprime(k+2);
第三空:素數都是奇數,此處需要更新k的值繼續循環判斷,可以將k的值遞增1或遞增2,故填:k=k+1 或 k+=1 或 k=k+2 或 k+=2。
【分析】本題主要考查的是模塊以及自定義函數的應用。
18.【答案】k=len(s);ord(s[i])==ord(s[i+1])-1 and flag==False 或 ord(s[i])==ord(s[i+1])-1 and not flag 或 ord(s[i])+1==ord(s[i+1]) and flag==False 或 ord(s[i])+1==ord(s[i+1]) and not flag;flag = False
【知識點】基本數據結構;常用標準函數
【解析】【解答】第一空:isprime(x)用來判斷x是不是素數,通過用x整除2~int(math.sqrt(x)),如果余數為0則表明該數不是素數,賦值f為假退出循環,f的初值為True,故填:f = True。
第二空:若兩個素數之差為 2,則該對素數稱為雙胞胎數,此處判斷相差為2的兩個數是不是素數,故填:isprime(k+2)。
第三空:素數都是奇數,此處需要更新k的值繼續循環判斷,可以將k的值遞增1或遞增2,故填:k=k+1 或 k+=1 或 k=k+2 或 k+=2。
【分析】本題主要考查的是字符串的操作。ord(  ):返回對應字符的ASCII數值
1 / 1浙江省溫州市2020-2021學年高一下學期信息技術期末考試試卷
一、選擇題
1.(2021高一下·溫州期末)①設計算法,②描述算法,③調試運行程序,④抽象建模,⑤編寫程序。從以上這些過程選出屬于用計算機編程解決問題的一般過程,并正確排序后的選項是(  )
A.④①⑤② B.①②③④ C.④①②⑤ D.④①⑤③
【答案】D
【知識點】計算機解決問題的過程
【解析】【解答】計算機編程解決問題的一般過程:④抽象建模①設計算法⑤編寫程序③調試運行程序。故答案選D。
【分析】本題考查的是計算機解決問題的過程。
2.(2019高二下·湖州月考)某算法的部分流程圖如圖所示,執行這部分流程后,變量a,b的值分別是(  )
A.3,3 B.3,4 C.6,6 D.7,11
【答案】D
【知識點】算法的常用表示方法;算法的控制結構
【解析】【解答】分析程序,a=2,b=1,b<5,執行yes語句,a=a+b=3,b=a+b=4;b<5,執行yes語句,a=a+b=7,b=a+b=11;b>5,程序結束,故答案選D。
【分析】此題主要考查循環結構流程圖的應用。流程圖描述算法的方法:流程圖使用各種特定的圖形來描述算法,其中用圓角矩形表示開始和結束,用矩形框表示賦值和處理框,用菱形表示判斷框,如果流程線沒有回到流程框上面,就是選擇結構,如果流程線回到菱形框上面就是循環結構,用箭頭表示走向。
3.(2021高一下·溫州期末)關于python程序設計語言,下列說法不正確的是(  )。
A.python源文件以***.py為擴展名
B.python的默認交互提示符是:>>>
C.python只能在文件模式中編寫代碼
D.python具有豐富和強大的模塊
【答案】C
【知識點】計算機語言
【解析】【解答】python源文件以***.py為擴展名,python的默認交互提示符是:>>>,python能在文件模式中編寫代碼,也能在交互模式中編寫代碼,python具有豐富和強大的模塊。故答案選C。
【分析】本題考查的是python程序設計語言。Python是一種跨平臺、開源、解釋型的高級編程語言。Python語言有三個方面的主要特點:語法簡潔、粘性擴展、類庫豐富。
4.(2021高一下·溫州期末)語句print( 'abd' > 'abc' and 20%6 = = 10%4 )的結果為(  )
A.False B.True C.3 D.編譯錯誤
【答案】B
【知識點】運算符、基本運算與表達式
【解析】【解答】 'abd' > 'abc' 值為True,20%6==10%4值為True,邏輯運算符and兩邊值均為真時值才為真,否則值為假。 'abd' > 'abc' and 20%6 = = 10%4值為True。故答案選B。
【分析】本題主要考查的是Python表達式的運算。運算符優先級別排序:算術運算符>=字符運算符>關系運算符>邏輯運算符。
5.(2021高一下·溫州期末)下列可以作為python變量名的是(  )
A.'a1' B.6key C.False D.i_f
【答案】D
【知識點】常量、變量及變量的賦值
【解析】【解答】選項A:變量名不能有 ' ;選項B:變量不能以數字開頭;選項C:變量名不能是保留字;選項D:i_f可以作為python變量名。故答案選D。
【分析】本題考查的是Python變量的命名。Python中的變量名只能由大寫字母、數字、下劃線組成,不能以數字開頭,字母區分大小寫,不能使用保留字。
6.(2021高一下·溫州期末)已知變量x=5,執行語句x*=x+3,變量x的值為(  )
A.8 B.13 C.28 D.40
【答案】D
【知識點】運算符、基本運算與表達式
【解析】【解答】語句x*=x+3等價于x=x*(x+3)=5*(5+3)=40。故答案選D。
【分析】本題考查的是Python表達式的運算。
7.(2021高一下·溫州期末)表達式12 % 9 和 –12% 9 的結果分別是(  )
A.1、6 B.3、–3 C.1、–3 D.3、6
【答案】D
【知識點】運算符、基本運算與表達式
【解析】【解答】12除9商1余3,-12除9商-2余6。故答案選D。
【分析】本題考查的是Python表達式的運算。%是取余運算。
8.(2021高一下·溫州期末)有如下python程序段:
a="Doing is better than saying ."
print(r"\n"+a[ :15])
該程序運行后,輸出的結果是(  )
A.直接輸出:' \nDoing is better '
B.直接輸出:\nDoing is better th
C.直接輸出:\nDoing is better
D.先換行,然后在新的一行中輸出:Doing is better
【答案】C
【知識點】基本數據結構;基本語句
【解析】【解答】r標識 \ 后面的字符不轉義,a[ :15]表示從a的右邊往左第15位到最左邊全部輸出。該程序運行后,輸出的結果是直接輸出:\nDoing is better。故答案選C。
【分析】本題考查的是列表及輸出語句的應用。列表的切片操作:
格式:[start: end: step]。
功能:返回從索引位置start到索引位置end且以step為步數的子序列(不包含索引位置end的元素)。
9.(2021高一下·溫州期末)已知列表:s1=[1,['a','b'],True],執行以下程序:
s1=[1,['a','b'],True]
s1[0]=s1[0]*2
s1.append(('apple','banana'))
print(s1[1: ])
執行后輸出的結果為:(  )
A.[True, ('apple', 'banana')]
B.[ ['a', 'b'], True, ('apple', 'banana')]
C.[2,['a', 'b'], True, 1, ['a', 'b'], True]
D.[1, ['a', 'b'], True, ('apple', 'banana')]
【答案】D
【知識點】基本數據結構
【解析】【解答】前三行語句執行完,列表s1的元素值分別是2,['a', 'b'], True ,('apple', 'banana'),最后執行語句print(s1[1: ]),輸出列表s1除去第一個元素剩下的所有元素,故執行后輸出的結果為:[ ['a', 'b'], True, ('apple', 'banana')]。故答案選B。
【分析】本題主要考查的是Python列表。列表是包含0個或多個對象的有序序列,用方括號“[ ]”括起來,并用逗號分隔其中的對象(元素)。可以通過索引訪問列表中特定位置的元素。
列表的切片操作:
格式:[start: end: step]。
功能:返回從索引位置start到索引位置end且以step為步數的子序列(不包含索引位置end的元素)。
10.(2021高一下·溫州期末)已知字典dict1={1:2, 2:(1,2), (1,2):'b', 'b':'b1','b1':'b2' },要得到字典中的值'b',下列方法可行的是(  )
A.dict1[(1,2)] B.dict1{'b'} C.dict1[3] D.dict1['b1']
【答案】A
【知識點】基本數據結構
【解析】【解答】由字典dict1={1:2, 2:(1,2), (1,2):'b', 'b':'b1','b1':'b2' }可知,'b'的鍵是(1,2)。要得到字典中的值'b',可以通過語句dict1[(1,2)]。故答案選A。
【分析】本題主要考查的是python中字典的應用。字典是Python中唯一內建的映射類型。字典中沒有特殊的順序,但都是存儲在一個特定的鍵(key)下面,鍵可以是數字,字符串,甚至是元組。
11.(2021高一下·溫州期末)小王編寫了出租車收費的python程序,代碼如下:
s1=float(input('請輸入行駛路程(公里):'))
if s1<=3:
f=10
elif s1<=10:
f=10+2.5*(s1-3)
else:
f=27.5+3.5*(s1-10)
print(f)
要測試所有分支程序代碼是否正確,以下測試數據中,最恰當的一組是(  )
A.3,8 B.-1,5,12 C.1,6,20 D.3,12,20
【答案】C
【知識點】分支結構語句及程序實現
【解析】【解答】本題程序采用的是條件分支結構,第一個條件是s1<=3,第二個條件是310。最恰當的一組測試數據是1,6,20。故答案選C。
【分析】本題考查的是對Python條件分支結構的分析。
12.(2021高一下·溫州期末)有下面一段程序:
p = [ 2, 1, 3, 4, 5 ]
c = 0
for i in range( 2, 6, 2 ):
if p[ i - 2 ] + p[ i -1 ] == p[ i ]:
c += 1
print( c )
執行該段程序后,計算機顯示的是(  )
A.1 B.2 C.3 D.4
【答案】A
【知識點】分支結構語句及程序實現;循環結構語句及程序實現
【解析】【解答】變量i的取值有2、4,當i=2時,滿足if條件,c=c+1=1。執行該段程序后,計算機顯示的是1。故答案選A。
【分析】本題考查的是對Python程序的分析。
13.(2021高一下·溫州期末)以下程序導入python的math模塊,使用math模塊下的函數對輸入的實數進行向下取整,具體代碼如下:

n = input("請輸入一個實數:")

print(n3)
請完善該代碼,上述劃線處可選的語句為:(  )
A.① import math ;② n3=math.floor(float(n)) ;
B.① import math;② n3=floor(float(n)) ;
C.① import math ;② n3=math.sqrt(float(n)) ;
D.① from math import ceil ;② n3=ceil(float(n)) ;
【答案】A
【知識點】模塊
【解析】【解答】導入python的math模塊,使用import關鍵字,①填 import math;floor() 返回數字的下舍整數,input接收的數據類型是str類型,需要將其轉換為浮點型,②填n3=math.floor(float(n)) 。故答案選A。
【分析】本題考查的是Python模塊導入。import語句或from-import語句可以將函數所在的模塊導入。
14.(2021高一下·溫州期末)小林編寫一段文件讀寫操作代碼,文件如圖,代碼段如下:
file=open('ceshi.txt','w')
file.write("python is a programming language.")
file.close(  )
file=open('ceshi.txt','r')
print(file.read(  ))
該代碼段運行后,輸出的結果為(  )
A.IA Distributed System Based on Python.
B.python is a programming language.
C.IA Distributed System Based on Python. python is a programming language.
D.程序編譯錯誤,不會輸出結果
【答案】B
【知識點】程序的調試及運行;基本語句
【解析】【解答】首先打開ceshi.txt文件進行寫操作,寫入python is a programming language.會覆蓋之前的內容。運行該代碼段后,輸出的結果為python is a programming language.。故答案選B。
【分析】本題考查的是Python文件讀寫操作。open(  )是文件打開函數,read(  )、write(  )是文件讀寫函數。
15.(2021高一下·溫州期末)執行如下代碼:
c=0
num=[1,2,3,4]
def fun(num):
global c
for i in range( 5 ) :
c+=1
num.append(c)
return num
print(fun(num), num ,c)
則程序執行后輸出(  )
A.[1,2,3,4] [1,2,3,4]
B.[1, 2, 3, 4, 5] [1,2,3,4] 0
C.[1, 2, 3, 4, 5] [1,2,3,4] 5
D.[1, 2, 3, 4, 5] [1, 2, 3, 4, 5] 5
【答案】D
【知識點】過程與自定義函數;循環結構語句及程序實現
【解析】【解答】fun函數接收一個列表num,循環結束后c的值為5,將c追加到列表num中并返回num,num=[1,2,3,4]。fun(num)執行完,返回值num為[1, 2, 3, 4, 5],程序執行后輸出程序執行后輸出[1, 2, 3, 4, 5] [1, 2, 3, 4, 5] 5。故答案選D。
【分析】本題考查的是python循環結構、列表及函數的應用。append命令是將整個對象加在列表末尾。
二、操作題
16.(2021高一下·溫州期末)廣場上有許多(有數百人)小朋友在玩分組游戲,當他們分成三人一組時,發現最后多出兩個;當他們分成五人一組時,發現最后多出三個;當他們分成七人一組時,發現最后多出兩個。編寫程序求出這些小朋友的可能人數。
實現上述功能的程序如下,請在程序劃線處填入合適的代碼。
   
a=[ ]
for i in range(100,1000):
if   :
a.append(i)
total + = 1
print("這群小朋友總的人數有:")
for j in range(len(a)):
print(   ,end='、')
print('')
print('可能情況數為:',total,'種')
【答案】total=0;i%3 == 2 and i%5 == 3 and i%7 == 2;a[j]
【知識點】循環結構語句及程序實現;基本數據結構
【解析】【解答】第一空:變量total用來統計有多少種情況,初始值為0,答案為:total=0。
第二空:當他們分成三人一組時,發現最后多出兩個;當他們分成五人一組時,發現最后多出三個;當他們分成七人一組時,發現最后多出兩個,即if判斷條件為i%3 == 2 and i%5 == 3 and i%7 == 2,滿足if條件時,將該值加到列表a中,答案為:i%3 == 2 and i%5 == 3 and i%7 == 2。
第三空:最后通過for循環輸出所有可能的數,用變量j控制,答案為:a[j]。
【分析】本題主要考查的是循環結構和列表的應用。append命令是將整個對象加在列表末尾。
17.(2021高一下·溫州期末)若兩個素數之差為
2,則該對素數稱為雙胞胎數,如 3,5 就是一對雙胞胎數。編寫 python 程序,實現如下功能:輸入 n 的值,統計顯示 n 以內的所有雙胞胎數。程序運行界面如圖所示:
實現上述功能的程序如下,請在劃線處填入合適的代碼。
import math
def isprime(x):
   
for i in range(2,int(math.sqrt(x))+1):
if x % i = = 0 :
f=False
return f
n=int(input("請輸入一個正整數n:"))
c=0
k=3
while k < = n-2:
if isprime( k ) and    :
c + = 1
print("第"+ str( c ) +"對雙胞胎數:", k ,'和',k+2)
   
print("共有"+str(c)+"對雙胞胎數")
【答案】f = True;isprime(k+2);k=k+1 或 k+=1 或 k=k+2 或 k+=2
【知識點】過程與自定義函數;模塊
【解析】【解答】第一空:isprime(x)用來判斷x是不是素數,通過用x整除2~int(math.sqrt(x)),如果余數為0則表明該數不是素數,賦值f為假退出循環,f的初值為True,故填:f = True;
第二空:若兩個素數之差為 2,則該對素數稱為雙胞胎數,此處判斷相差為2的兩個數是不是素數,故填:isprime(k+2);
第三空:素數都是奇數,此處需要更新k的值繼續循環判斷,可以將k的值遞增1或遞增2,故填:k=k+1 或 k+=1 或 k=k+2 或 k+=2。
【分析】本題主要考查的是模塊以及自定義函數的應用。
18.(2021高一下·溫州期末)小王編寫了“字符串縮寫”程序,實現如下功能:
1)輸入一串由英文字母和數字組成的字符串,
2)如果字符串有連續字符構成的升序段(后面字符的ASCII值比前面的字符的ASCII值大1),則把升序段縮寫成由第一個字符加上“ — ”和最后一個字符組成的新字符段,
3)例如:字符串為“abcdf12345becomexy”,則縮寫成“a-df1-5becomex-y”。
程序運行時,輸入一串字符,輸出縮寫的字符串,程序運行效果如下圖所示:
實現上述功能的程序如下,請在程序劃線處填入合適的代碼。
s=input("請輸入字符串s:")
   
flag = False
result=" "
for i in range( 0 , k-1):
if     :
result=result+s[i]+"-"
flag = True
elif ord(s[i]) ! = ord(s[i+1])-1:
result=result+s[i]
   
result=result + s[i+1]
print("縮寫后的字符串為:",result)
【答案】k=len(s);ord(s[i])==ord(s[i+1])-1 and flag==False 或 ord(s[i])==ord(s[i+1])-1 and not flag 或 ord(s[i])+1==ord(s[i+1]) and flag==False 或 ord(s[i])+1==ord(s[i+1]) and not flag;flag = False
【知識點】基本數據結構;常用標準函數
【解析】【解答】第一空:isprime(x)用來判斷x是不是素數,通過用x整除2~int(math.sqrt(x)),如果余數為0則表明該數不是素數,賦值f為假退出循環,f的初值為True,故填:f = True。
第二空:若兩個素數之差為 2,則該對素數稱為雙胞胎數,此處判斷相差為2的兩個數是不是素數,故填:isprime(k+2)。
第三空:素數都是奇數,此處需要更新k的值繼續循環判斷,可以將k的值遞增1或遞增2,故填:k=k+1 或 k+=1 或 k=k+2 或 k+=2。
【分析】本題主要考查的是字符串的操作。ord(  ):返回對應字符的ASCII數值
1 / 1

展開更多......

收起↑

資源列表

<pre id="tfb94"><li id="tfb94"></li></pre>

<bdo id="tfb94"><rt id="tfb94"></rt></bdo>
  • <menu id="tfb94"><dl id="tfb94"></dl></menu><i id="tfb94"><acronym id="tfb94"><sub id="tfb94"></sub></acronym></i>

    1. 主站蜘蛛池模板: 江津市| 南和县| 西乡县| 年辖:市辖区| 云梦县| 毕节市| 运城市| 乐东| 古蔺县| 东乌珠穆沁旗| 南城县| 新闻| 乌海市| 梓潼县| 温宿县| 鄂伦春自治旗| 玛纳斯县| 兴隆县| 视频| 宣威市| 大荔县| 盐津县| 蕲春县| 巴彦淖尔市| 禹州市| 博野县| 安宁市| 琼海市| 霍林郭勒市| 怀安县| 黔西| 平原县| 高碑店市| 泾阳县| 兰西县| 汝州市| 大姚县| 甘泉县| 南川市| 上犹县| 大名县|