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

粵教版 高中信息技術 必修1 第四章 程序設計基礎 單元測試作業(含答案解析)

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

粵教版 高中信息技術 必修1 第四章 程序設計基礎 單元測試作業(含答案解析)

資源簡介

粵教版 高中信息技術 必修1 第四章單元測試作業
學校:___________姓名:___________班級:___________考號:___________
一、選擇題
1.某超市用13位數字標識商品信息,其中8~12位是表示商品名的代碼,用字符串變量s存儲商品的信息碼(例如:s="9787100109796",商品名代碼是“10979”),下列Python表達式中能取出商品名代碼的是( )
A.s[-6:-1] B.s[7:11] C.s[8:12] D.s[7:-2]
2.某終端接上溫度傳感器,將溫度讀取到變量 a 中,代碼如下。
while True:
a=temperature()
if a>33:
display.show(Image.SAD)
sleep(3000)
else:
display.show(Image.HAPPY)
若溫度傳感器和主板的連接正常,燒錄并運行該代碼下列選項中正確的是( )
A.熱風機加熱后,主板 LED 顯示“哭臉”圖形,3 秒后顯示“笑臉”圖形
B.室溫低于33℃時,主板 LED不顯示任何圖形
C.熱風機加熱后,主板 LED 顯示“笑臉”圖形,3 秒后顯示“哭臉”圖形
D.室溫低于 33℃時,主板 LED 顯示“笑臉”
3.下列表達式的值為奇數的是( )
A.2**3%3 B.int(5.5)
C.len("python") D.max([1,2,3,5,8])
4.字符串s的值為 'the quick brown fox jumps over a lazy dog',則下列說法正確的是( )
A.s[1]的值為't' B.s[-1:-4:-1]的值為'god'
C.s[0:2]的值為'the' D.s[: :]的值為''
5.現有一段代碼如下,現輸入“260”和“-123”,運行后輸出結果分別是( )
x=input("請輸入數據")
if x[0] =="-":
fz=-int(x[:0:-1])
else:
fz=int(x[: :-1])
print(fz)
A.062 -32 B.062 -321 C.62 -32 D.62 -321
6.有如下 VB 程序段:
For i = 1 To Len(Text1.Text)
c = Mid(Text1.Text, i, 1)
If c >= "0" And c <= "9" Then
x = Val(c)
a((x + 1) Mod 10) = a((x + 1) Mod 10) + 1
End If
Next i
s = ""
For i = 0 To 9
s = s & a(i)
Next i
Text2.Text = s
數組元素 a(0) 到 a(9) 的值均為0,執行該程序段后,文本框Text2 顯示的內容為“1302000100”。則文本框 Text1 中輸入的內容可能是( )
A.2020-6-09 B.2020-02-28 C.2020-6-01 D.2019-01-07
7.哥德巴赫猜想是近代三大數學難題之一,即任一大于2的偶數,都可表示成兩個素數之和。采用Python驗證100以內哥德巴赫猜想的正確性,則劃線處的代碼為:( )
import math
def isprime(num):
i=2
while i<=int (math.sqrt(num)):
if num % i==0:
return False
i+=1
return True
n=6
while n<=100:
for j in range(3,int (n/2)):
if ____________________:
print (n,'=',j, '+',n-j)
n+=2
A.isprime(j) and isprime(n-j) B.isprime (j) and isprime(j+1)
C.isprime(n) and isprime(j) D.isprime(j) and isprime(j-1)
8.有如下Python程序段:
import random
num=[]
for i in range(0,6):
n=random.randint(1,10)
num.append(n)
for i in range(1,6):
if i%2==1 and num[i]>num[i-1] :
num[i],num[i-1]=num[i-1],num[i]
else:
num[i]=num[i]-1
print(num)
運行后列表中的值可能是( )
A.11,1,7,5,4,3 B.5,3,6,4,0,2 C.4,1,7,4,4,0 D.9,8,1,1,5,4
9.有如下Python程序段:
s1=input("請輸入字符串:")
a=[0]*128
for item in s1:
ch=ord(item)
a[ch]=a[ch]+1
s2=""
for i in range(len(a)):
for j in range(a[i]):
s2=s2+chr(i)
print(s2)
列表a各元素的初始值都為0,s1中輸入的內容為“abs54int”。執行該程序后,程序輸出的結果中第5個字符為( )
A.n B.s C.4 D.i
10.在Python中,a=2,b=5,表達式a>b and b>4的值是( )
A.1 B.-1 C.True D.False
11.某張單據上有一個5位數的編號n,如圖所示,其百位數和十位數模糊不清,但是知道 這個5位數是23的倍數。現要設計一個算法,找出所有滿足這些條件的5位數,并統計個數。
現有Python程序段如下:
c=0
for i in range(10):
for j in range(10):
m=25006+s
if m%23==0:
print(m)
c=c+1
print(“滿足這些條件的5位數總共有:”,c,“個” )
畫線處應填的代碼是( )
A.s=i*10+j B.s=i*100+j C.s=i+j*10 D.s=(i*10+j)*10
12.在Python中,有以下程序段:
s=1
for i in range(1,5):
s=s*i
print(s,i)
該程序段運行后,結果為( )
A.24 5 B.120 5 C.24 4 D.120 4
13.在Python中,以下賦值語句格式不正確的是( )
A.x,y=y,z B.x,y=1,2 C.x=y=30 D.x+y=z
14.下列Python表達式的值等于56的是( )
A.abs(-55)+1 B.ord("A") C.len("55")+1 D.chr(56)
15.下列關于Python常用的基本數據類型對應正確的是( )
A.Number(列表) B.String(字符串) C.Tuple(字典) D.Sets(元組)
16.下列 Python 表達式的值為偶數的是( )
A.12*3%5 B.len(“Welcome”)
C.int(3.9) D.abs(-8)
17.有如下程序段,測試結果為圖 11 所示
圖 11
n = int(input("請輸入行數:"))
if n % 2 == 0: #保證n 的值為奇數
n=n-1
a=[]
for i in range(n):
if i<=n//2:
b=2*i+1 #當在上半部分的時候
else:
#當在下半部分的時候

a.append(" "*w+"&"*b)
for s in a:
print(s)
請輸入行數:6
&
&&&
&&&&&
&&&
&
上述程序中劃線處可選語句為( )
①b=n-2*i+1 ②b=(n-i)*2-1 ③w=(n-b)%2 ④w=(n-b)//2
A.①③ B.①④ C.②③ D.②④
18.有如下Python程序段
s="aabbccabc"
st=s[1]
for i in range(1,len(s)):
if len(st)==0 or s[i]!=st[len(st)-1]:
st=st+s[i]
else:
st=st[0:len(st)-1]
print(st)
運行該段代碼后,輸出結果為( )
A.abc B.abcabc C.ababc D.aabbc
19.有如下 python 程序段:
n='15867239012'
s=0
for x in n:
if int(x)%2==0:
continue
elif s==14:
break
s+=int(x)
print(s)
該程序段執行后,則輸出結果為 ( )
A.18 B.26 C.14 D.17
20.代碼print(6+3==8), 運行后輸出結果是( )
A.6+3==8 B.8 C.True D.False
二、填空題
21."sun"in "sunday "的值為_______________。
22.閱讀程序代碼,寫出運行結果。
運行結果是:__________。
23..在Python中,(13%3)**2的結果是_______。
24.小申同學得到的關于共享單車使用情況的數據文件中,發現有如下圖中方框中的數據屬于___① 值,可以對此類數據進行處理可用pandas庫中的___② 函數。其語句可以為:df.②(subset=[‘bike_id’,’datetime’],keep=’first’,inplace=__③ )。圖中圈出數據記錄中有__④ 值,識別該值的方法是使用___⑤ 函數,若返回值是Tru13÷500e,則說明此處有缺失值,若要刪除缺失值記錄可采用的方法是__⑥ 函數。
A.drop_ duplicates ( ) B.dropna ( ) C.isnull( ) D.notnull ( )E.重復值 F.缺失值 G.異常值 H.True I.False
25.下列程序,運行結果為( )
import math
x=16
if x<0:
y=abs(x)
else:
y=math.sqrt(x)
print(y)
三、判斷題
26.Python程序設計語言屬于高級語言。( )
27.Python語言中求列表長度可以用len()函數。( )
28.循環結構表示程序中各步操作按出現的先后順序執行。( )
29.順序結構的執行順序是自上而下依次執行的。( )
30.在Python中定義函數的關鍵字是define。( )
31.While循環語句的循環體中必須有改變條件表達式值的語句,否則會形成死循環。 ( )
32.如果變量a=5,那么表達式10>a and a<3的結果為False。( )
33.在 Python語言環境下,For循環語句中的循環體在書寫時需要縮進,且必須縮進四個空格。 ( )
34.程序的基本結構有順序結構、選擇結構和循環結構。( )
35.Python中“/”表示求余。( )
四、操作題
36.小明對入棧、出棧規則研究發現, 若有 n 個數字 1,2,3,……,n 按由小到大的順 序入棧,則出棧序列必須遵循下述原則: 當數字 x 出棧后,則在x后出棧的小于x 的 所有數字必定以降序排列,比x大的數字可以夾雜在該降序序列中。現編寫 Python 程 序,按上述原則驗證一個隨機產生的出棧序列是否可能, 程序運行界面如圖所示。
(1) 根據題意,若有 7 個數字入棧, 則出棧序列“3→2→5→4→7→1→6”是______ (單選,填字母: A.可能 / B.不可能)
(2) 實現上述功能的Python程序代碼如下,程序中加框處代碼有錯,請改正_________。
(3)請在劃線①②處填入合適代碼__________、________。
import random
n=int(input('請輸入入棧元素的個數:'))
data=[i+1 for i in range(n)]
random.shuffle(data) #將序列的所有元素隨機排序
s=” ”
for i in range(n):
print('隨機產生的出棧序列為: '+s[1:])
flag=True;i=0
while i
for j in range(i+1,n):
if data[j]if data[j]x=data[j]
else:
②#去除最后多余的'→'
break
i+=1
if flag:
print('該出棧序列是可能的!')
else:
print('該出棧序列是不可能的! ')
試卷第1頁,共3頁
試卷第1頁,共3頁
參考答案:
1.A
【詳解】本題主要考查字符串切片操作。切片操作基本表達式:object[start_index:end_index:step],step:正負數均可,其絕對值大小決定了切取數據時的“步長”,而正負號決定了“切取方向”,正表示“從左往右”取值,負表示“從右往左”取值。start_index:表示起始索引(包含該索引對應值),該參數省略時,表示從對象“端點”開始取值。end_index:表示終止索引(不包含該索引對應值),該參數省略時,表示一直取到數據“端點”。13位數字標識商品信息中,其中8~12位是表示商品名的代碼,由于元素下標從0開始,所以截取應該是7-11位,表示為s[7:12]或者為s[-6:-1],故本題選A選項。
2.D
【詳解】本題主要考查Python程序分析。分析程序,室溫不高于33℃時,主板 LED顯示“笑臉”圖形,室溫高于33℃時,主板 LED 顯示“哭臉”圖形,故本題選D選項。
3.B
【詳解】本題主要考查Python表達式的運算。2**3%3=2,int(5.5)=5,len("python")=6,max([1,2,3,5,8])=8,故本題選B選項。
4.B
【詳解】本題主要考查字符串的操作。字符串的下標從0開始,s[1]的值為'h';切片操作基本表達式:object[start_index:end_index:step],step:正負數均可,其絕對值大小決定了切取數據時的“步長”,而正負號決定了“切取方向”,正表示“從左往右”取值,負表示“從右往左”取值。start_index:表示起始索引(包含該索引對應值),該參數省略時,表示從對象“端點”開始取值。end_index:表示終止索引(不包含該索引對應值),該參數省略時,表示一直取到數據“端點”。s[-1:-4:-1]的值為'god',s[0:2]的值為'th',s[: :]的值為 'the quick brown fox jumps over a lazy dog',故本題選B選項。
5.D
【詳解】本題主要考查Python字符串切片操作。切片操作基本表達式:object[start_index:end_index:step],step:正負數均可,其絕對值大小決定了切取數據時的“步長”,而正負號決定了“切取方向”,正表示“從左往右”取值,負表示“從右往左”取值。start_index:表示起始索引(包含該索引對應值),該參數省略時,表示從對象“端點”開始取值。end_index:表示終止索引(不包含該索引對應值),該參數省略時,表示一直取到數據“端點”。故當輸入260時,執行else部分,輸出62,輸入-123時執行if部分,輸出-321,故本題選D選項。
6.A
【詳解】本題考查VB程序段。該VB程序段對Text1中的數字字符進行桶排序,對數字x的排序規則為a((x+1)Mod10)=a((x+1)Mod10)+1。最后在文本框Text2依次輸出a(0)~a(9)的值,從輸出結果1302000100知,文本框Text1中含有1個9,3個0,2個2,1個6,不包含其余數字,四個選項中,只有A符合要求。
7.A
【詳解】本題主要考查Python程序的調試。isprime(num)用于判斷num是否為素數,哥德巴赫猜想是近代三大數學難題之一,即任一大于2的偶數,都可表示成兩個素數之和。劃線處的代碼需要判斷j與n-j是否均為素數,若滿足if判斷條件則輸出,故填isprime(j) and isprime(n-j) ,故本題選A選項。
8.C
【詳解】本題主要考查Python程序的綜合應用。randint(1,10)的范圍是1到10包含1和10的自然數。num列表元素賦值后最大值是10。賦值后沒有代碼對num列表元素值增大的運算,故選項A有11而錯誤;由if條件可知奇數下標的元素大于前一個元素時兩個元素交換,因此奇數下標對應的元素值小于等于前一個元素值,選項B中最后一個元素值2大于0,選項B錯誤;選項D中下標為3的元素值是1,下標為2的元素值也是1,if條件不成立執行else部分進行自身減1操作。如果減1之后是1,那么之前應該是2。如果是2if條件就成立,因此選項D矛盾,故本題選C選項。
9.D
【詳解】本題主要考查Python程序的執行。第一個for循環的作用是把輸入字符串的每個字符對應的ASCII碼作為a數組的索引值,并把對應的數組元素值設置為1。第二個for循環是遍歷a數組元素,此循環中的內嵌循環相當于if判斷,因為a[i]的值不是0就是1,只有a[i]的值為1時才執行一次s2=s2+chr(i)語句,s2的結果就是按ASCII碼順序把字符串重新排序,故s1中輸入的內容為“abs54int”后s2的值為“45abinst”,因此第5個字符是i,故本題選D選項。
10.D
【詳解】本題主要考查Python表達式的運算。邏輯運算符or兩邊值均為假時值才為假,否則值為真;邏輯運算符and兩邊值均為真時值才為假,否則值為假。在Pythn中,a=2,b=5,表達式a>b and b>4的值是False,故本題選D選項。
11.D
【詳解】本題主要考查Python程序的調試。分析程序,其百位數和十位數模糊不清,變量m是25006加上該模糊的三位數,該三位數即對應的模糊2位數乘以10,變量i控制高位,變量j控制低位,故劃線處應填的代碼是s=(i*10+j)*10,故本題選D選項。
12.C
【詳解】本題主要考查Python呈現執行。range(start, stop, [step]),start: 計數從 start 開始。默認是從 0 開始。例如range(5)等價于range(0, 5);stop: 計數到 stop 結束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5;step:步長,默認為1。例如:range(0, 5) 等價于 range(0, 5, 1)。故循環執行完,i=4,s=s*i=1*1*2*3*4=24,故本題選C選項。
13.D
【詳解】本題主要考查Python表達式。Python賦值語句是將等號右邊的式子賦給左邊的變量,故格式不正確的是x+y=z,故本題選D選項。
14.A
【詳解】本題考查的是Python函數。abs()是求絕對值;ord()返回對應的 ASCII 數值;len()求長度;chr返回一個對應的字符。abs(-55)+1=56;ord("A")=65;len("55")+1=3;chr(56)="8"。故本題應選A。
15.B
【詳解】本題主要考查Python基本數據類型的描述。Number(數字),list(列表),String(字符串),dict(字典),Tuple(元組),Sets(集合),故本題選B選項。
16.D
【詳解】本題主要考查Python表達式。12*3%5=1,len(“Welcome”)=7,int(3.9)=3,abs(-8)=8,故本題選D選項。
17.D
【詳解】本題主要考查Python程序的綜合應用。①此處處理下半部分,下半部分n-i是與上半部分i對應,如n=6,i=3,此時b=3進行驗證,發現(n-i)*2需要減去1,故第一空填b=(n-i)*2-1。變量w是用來控制符號“&”前面需要的空格數,代入驗證,可知第二空填w=(n-b)//2,故本題選D選項。
18.A
【詳解】本題主要考查Python程序的執行。分析程序可知,該程序實現將s中相鄰不相等的字母依次拼接到變量st中,相等字母跳過,s="aabbccabc",故運行該段代碼后,輸出結果為abc,故本題選A選項。
19.B
【詳解】本題主要考查Python程序執行。分析程序,變量x是依次取字符串n中的字符,當int(x)是偶數時跳過本輪循環,若s的值為14則退出循環,其余情況執行s+=int(x),故s=0+1+5+7+3+9+1=26,故本題選B選項。
20.D
【詳解】本題考查表達式。print(6+3==8)輸出值為判斷等式兩邊是否相同,顯然不相同,輸出False。故選項D正確。
21.True
【詳解】本題主要考查Python表達式。字符串sun是字符串sunday的字串,故"sun"in "sunday "的值為True。
22.114
【詳解】本題主要考查Python程序的執行。分析程序可知,該程序實現對列表data中的偶數進行求和賦給變量sum,故sum=sum+i=0+34+78=114,故運行結果是114。
23.1
【詳解】本題主要考查Python表達式的運算。(13%3)**2=1**2=1。
24. E A H F C B
【詳解】本題主要考查Python程序設計。下圖中方框中的數據屬于重復值,可以對此類數據進行處理可用pandas庫中的drop_ duplicates ( ) 函數(去重函數)。其語句可以為:df.drop_ duplicates ( )(subset=[‘bike_id’,’datetime’],keep=’first’,inplace=False )。圖中圈出數據記錄中有缺失值,識別該值的方法是使用isnull( )函數(判斷是否為空函數),若返回值是Tru13÷500e,則說明此處有缺失值,若要刪除缺失值記錄可采用的方法是dropna ( )函數。
25.4.0
【詳解】本題主要考查Python程序的執行。x=16,不滿足if判斷條件,執行else部分y=math.sqrt(x)=4.0,故運行結果是4.0。
26.正確
【詳解】本題主要考查Python程序設計語言。Python 是一個高層次的結合了解釋性、編譯性、互動性和面向對象的高級語言,故表述正確。
27.正確
【詳解】本題主要考查Python函數的應用。Python語言中求列表長度可以用len()函數,表述正確。
28.錯誤
【詳解】本題主要考查循環結構的描述。順序結構表示程序中各步操作按出現的先后順序執行,循環可以多次重復地執行多條語句,故表述錯誤。
29.正確
【詳解】本題主要考查程序控制結構。順序結構的執行順序是自上而下依次執行的,表述正確。
30.錯誤
【詳解】本題主要考查Python關鍵字。在Python中定義函數的關鍵字是def,故表述錯誤。
31.正確
【詳解】本題考查while循環語句。while循環中如果缺少條件判斷,循環會無限制地執行下去,形成死循環,造成電腦內存空間占用,嚴重時可能造成電腦卡頓甚至死機。故本題判斷正確。
32.正確
【詳解】本題考查的是表達式的運算。10>5為真,5<3為假,所以10>5 and 5<3為假,題干描述正確。
33.錯誤
【詳解】本題考查的是Python中的for語句格式。在 Python語言環境下,For循環語句中的循環體在書寫時需要縮進,但不是必須縮進四個空格。故題干中的說法錯誤。
34.正確
【詳解】本題主要考查程序控制結構。程序的基本結構有順序結構、選擇結構和循環結構,表述正確。
35.錯誤
【詳解】本題主要考查Python運算符。Python中“%”表示求余,“/”表示除,故表述錯誤。
36. B s+=’ →’+str(data[i]) x=data[i] flag=False
【詳解】本題主要考查棧數據結構及Python程序的綜合應用。(1)根據提干原則:當數字x出棧后,則在x后出棧的小于x的所有數字必定以降序排列,比x大的數字可以夾雜在該降序序列中。3出棧后比3小的2、1是降序排列;當2出棧后比2小的1是降序排序;當5出棧后比5小的4、1是降序排列;當4出棧后比4小的1是降序排列;當7出棧后比7小的1、6沒有按降序排列,故該出棧序列不可能,選B選項。(2) 加框處的代碼是“s+ = str (data[i]+'→”。輸出s變量是用的是s[1 :],結合運行界面應“去掉最后多余的“→”,可知加框處修改為“s+=’ →’+str(data[i])”。(3)①處下邊有一行代碼“if data[j] < x”, 此行代碼之上沒有變量x的定義和賦值。python中變量使用前需要賦值聲明,由此推斷①處和x有關。再結合上下文代碼和題意,可知此處填寫為x = data [i]。x表示當前比較到的最小值,初始化為出棧的值。最后的if語句會根據flag變量的值判斷出棧序列是否可能。整個while語句塊中都沒有改變flag值的地方,由此推測此處和flag有關。該處屬于的else語句塊是不可能為出棧序列的情況,同時由break語句可推測此處設置flag設置為False。
答案第1頁,共2頁
答案第1頁,共2頁

展開更多......

收起↑

資源預覽

<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. 主站蜘蛛池模板: 利辛县| 义马市| 大同市| 铜梁县| 阳春市| 耿马| 房山区| 浠水县| 临武县| 浙江省| 石渠县| 讷河市| 昌都县| 翼城县| 遂溪县| 梁河县| 西乌| 阜城县| 华安县| 怀宁县| 博爱县| 淮滨县| 葵青区| 富源县| 岑溪市| 长乐市| 济南市| 牙克石市| 长宁区| 温泉县| 鲁山县| 巴林右旗| 衡山县| 大同市| 濮阳市| 澄迈县| 德庆县| 耒阳市| 虞城县| 建宁县| 武平县|