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

全國電子信息學會考級2023年3月份6年級下學期Python編程4級考級試題(Word版,含答案)

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

全國電子信息學會考級2023年3月份6年級下學期Python編程4級考級試題(Word版,含答案)

資源簡介

2023年3月青少年軟件編程(Python)等級考試五級試題
一、單選題(共25題,共50分)
1. 運行下列程序,輸出的結(jié)果是?(?。?br/>
def wenhao(name = 'zhejiang'):
print('hello' + name)
wenhao()


A. hello
B. hellozhejiang
C. helloname
D. 程序?qū)⑻崾具\行錯誤
2. 運行下列程序,輸出的結(jié)果是?( )

rst = lambda a,b=5:a*b

print(rst(5))


A. 5
B. 15
C. 25
D. 35
3. 運行下列程序,輸出的結(jié)果是?(?。?br/>
def jsarea(r, PI = 3.14):
area = PI * r * r
print(jsarea(1))


A. 3.14
B. 因缺失參數(shù),不能計算
C. None
D. 程序代碼有錯誤
4. 運行下列程序,輸出的結(jié)果是?( )

def js(n):
s = 0
while n:
s = s * 10+n % 10
n //= 10
return s
print(js(20230110))


A. 20230110
B. 01103202
C. 2301102
D. 1103202
5. 在傳遞信息的過程中, 通常會將一些敏感信息進行加密,以下是對數(shù)據(jù)進行加密的Python程序段,若輸入數(shù)據(jù)為“cie0108”,則輸出的結(jié)果是?( )

def jm(t):
s = ""
for ch in t:
if "0" <= ch <= "9":
x = int(ch) + 3
if x >= 10:
x = x % 10
ch = str(x)
s = s + ch
return s
print(jm('cie0108'))


A. 1343eic
B. 0108cie
C. cie3431
D. 3431cie
6. 運行下列程序,輸出的結(jié)果是?( )

s = 0
def f(n):
global s
for i in range(n):
s = s + i
return s
print(f(f(3)))


A. 3
B. 6
C. 9
D. 0
7. 運行下列程序后,輸出的結(jié)果是?( )

def jsh(n):
if n == 1:
return 1
else:
return n + jsh(n-1)
print(jsh(10))


A. 1
B. 35
C. 45
D. 55
8. 運行下列程序后,輸出的結(jié)果是?( )

def fun(s):
if len(s) == 1:
return s
else:
return fun(s[1:]) + s[0]
print(fun('CIE2023'))


A. 3202EIC
B. EIC3202
C. 3220EIC
D. EIC2023
9. 下列有關(guān)遞歸的描述中,正確的是?( )

A. 遞歸函數(shù)中肯定有循環(huán)結(jié)構(gòu);
B. 遞歸沒有體現(xiàn)“大事化小”的思想;
C. 遞歸有明確的結(jié)束遞歸的邊界條件;
D. 遞歸執(zhí)行效率較高。
10. 運行下列程序,運行的結(jié)果是?(?。?br/>
def leijia(x):
x += 1
return x
x=10
y=leijia(x)
print(y)


A. 1
B. 10
C. 11
D. None
11. 關(guān)于分治算法特征的描述中,錯誤的是?(?。?br/>
A. 當問題的規(guī)??s小到一定的程度就可以容易地解決;
B. 問題可以分解為若干個規(guī)模較小的相同問題;
C. 該問題所分解出的各個子問題是可以相互獨立,也可以相互交叉;
D. 該問題分解出的子問題的解可以合并為該問題的解。
12. 張老師有n(范圍在1到15之間)個禮物分給同學們,他請同學們猜禮物的數(shù)量,請問同學們猜幾次后肯定知道禮物的數(shù)量(不算運氣成分第1次或第2次就猜到)?(?。?br/>
A. 15
B. 7
C. 4
D. 3
13. 下列排序算法中,時間復雜度最小的是?(?。?br/>
A. 插入排序
B. 冒泡排序
C. 快速排序
D. 選擇排序
14. 小方要在程序中生成[10,99]之間的隨機整數(shù),下列程序不能實現(xiàn)的是?(?。?br/>
A. import random
a = random.randint(10,99)
B. import random as t
a = t.randint(10,99)
C. from random import randint
a = randint(10,99)
D. from random import randint as t
a = t.randint(10,99)
15. 下列哪個關(guān)鍵字可用來創(chuàng)建自定義函數(shù)?(?。?br/>
A. function;
B. def;
C. class;
D. procedure。
16. 在 Python 語言中,求列表長度用下列哪個函數(shù)?(?。?br/>
A. size
B. len
C. length
D. str
17. 下列關(guān)于函數(shù)返回值的描述中,正確的是?(?。?br/>
A. Python函數(shù)的返回值使用很靈活,可以沒有返回值,可以有一個或多個返回值。
B. 函數(shù)定義中最多含有一個return語句。
C. 在函數(shù)定義中使用return語句時,至少給一個返回值
D. 函數(shù)只能通過print語句和return語句給出運行結(jié)果
18. 下列有關(guān)自定義函數(shù)的描述,正確的是?(?。?br/>
A. 函數(shù)的定義必須在程序的開頭;
B. 函數(shù)定義后,其中的程序可以自動執(zhí)行;
C. 函數(shù)定義后需要調(diào)用才會執(zhí)行;
D. 函數(shù)體與關(guān)鍵字必須左對齊。
19. 運行下列程序,輸出的結(jié)果是?( )
Sum=1
for i in range (1,5):
Sum=Sum*i
print(Sum,i)

A. 24;5
B. 120;5
C. 24;4
D. 120;4
20. 關(guān)于下列代碼的描述,錯誤的是?( )
def fact(n):
s=1
for i in range(1,n+1):
s*=i
return s

A. s不能在函數(shù)外使用
B. range()函數(shù)是Python內(nèi)置函數(shù)
C. 如果n=4,返回的值為24
D. 代碼中n是可選參數(shù)
21. 某人將自己密碼旅行箱的密碼遺忘了。當事人記起密碼是一個三位自然數(shù),并且密碼個位數(shù)是8,其它位含1但不能確定是哪一位。請將所有可能的密碼遍歷出來。

請完成程序并運行?( )

for x in range(100,__ ①__): #三位密碼的范圍

if ____ ②___ and "1" in str(x): #符合條件的密碼

print(x)


A. 999;x%10=8
B. 999:x%10==8
C. 1000;x%10=8
D. 1000;x%10==8

22.
甲同學第一天跳繩100下,第二天開始每天增加5下;乙同學第一天跳繩100下,每隔一天增加10下。計算30天兩人的跳繩總數(shù)。

甲的跳繩數(shù):100、105、110、115、120……

乙的跳繩數(shù):100、100、110、110、120……

請補全程序代碼?( )

a=100 #甲同學第一天跳繩次數(shù)

b=100 #乙同學第一天跳繩次數(shù)

x=a #甲同學累計跳繩次數(shù),初始值是第一天的次數(shù)

y=b #乙同學累計跳繩次數(shù),初始值是第一天的次數(shù)

#從第二天開始迭代計算

for i in range(2,31):

a= ① #甲同學每天增加5次

if i%2==1: #當天數(shù)為奇數(shù)時

b= ② #乙同學增加10次

x=x+a

y=y+b

print("甲同學30天跳繩",x,"下")

print("乙同學30天跳繩",y,"下")


A. a+5;b+10
B. +5;+10
C. a+10;b+5
D. +10;+5
23. 用遞歸算法計算10的階乘10!的值#自定義階乘函數(shù)。自定義函數(shù)fact(n)是求n的階乘。

10!=1×2×3×…×10

請補全程序代碼?( )

#自定義函數(shù)

def fact(n): #求階乘

if(n==1): #終止條件

return 1 #結(jié)束遞歸

else: #遞歸條件

p=__①____ #調(diào)用遞歸(自身)

return p #返回乘積

#主程序

print("10!=",fact(10)) #調(diào)用遞歸


A. n*fact(n-1)
B. n*fact(n)
C. n*fact(n+1)
D. n**fact(n)
24. 用分治法查找列表中是否存在指定的數(shù)字。給定的列表已升序排序。請補全程序代碼?( )

#在列表cards中查找數(shù)字x,返回下標值,若未找到,返回-1

def serch(cards=list,x=int):

a=0 #定義左端點下標

b=len(cards)-1 #定義右端點下標

#逐級分割查找范圍,縮小查找規(guī)模

while a<=b:

m=(a+b)//2 #定義中點下標

if x==cards[m]: #x剛好等于中點值

return m

elif ① : #x<中點值,說明x位于左段位置

b=m-1 #重新定義右端點

else:

a=m+1 #重新定義左端點

return -1 #未找到,返回-1

#主程序

#在列表d中查找用戶輸入的數(shù)字r

d=[1,6,16,24,44,46,79,80,81,82,87,102,134,151,156,188,196,202,212,226,228,248,272,274,286,306,321,351,363]

print(d) #顯示一下列表d

r=int(input("請輸入要查找的數(shù)字:"))

y=serch(d,r) #調(diào)用子函數(shù),d,r是實參

if y>=0:

print("已找到",r,",它是列表中第",y+1,"個數(shù)字")

else:

print("未找到",r)


A. x
B. x
C. x>cards[m-1]
D. x>cards[m]
25. 下列不屬于Python數(shù)據(jù)分析與可視化第三方庫的是?( )

A. pandas
B. matplotlib
C. opencv
D. Numpy
二、判斷題(共10題,共20分)
26. 關(guān)鍵字實參通過“關(guān)鍵字=值”的方式傳值,不需要考慮函數(shù)調(diào)用過程中形參的順序。( )

正確 錯誤
27. 函數(shù)是將實現(xiàn)相同功能的代碼封裝在一起,實現(xiàn)代碼復用。(?。?br/>
正確 錯誤
28. 創(chuàng)建自定義函數(shù)時,不需要聲明函數(shù)形參的類型,形參的類型由調(diào)用自定義函數(shù)時傳遞的實參類型確定。( )

正確 錯誤
29. 遞推是按照一定的規(guī)律計算序列中的每一項,通常是通過計算前面的一些項來計算后一項的值。( )

正確 錯誤
30. 某同學用天平稱量的過程如下:先放置100克砝碼,砝碼偏重;再將砝碼改為50克,砝碼偏輕;又將砝碼改為75克……通過這種策略,該同學很快完成物品稱重工作,這體現(xiàn)了分治思想。( )

正確 錯誤
31. 使用"pip install-upgrade pandas"命令能夠升級pandas庫。( )

正確 錯誤
32. Python中調(diào)用close()函數(shù)可實現(xiàn)對文件內(nèi)容的讀取。(?。?br/>
正確 錯誤
33. 下面的程序會輸出兩個值。(?。?br/>def r(a,b):
s=a+b
b+=1
return s
print(r(3,8))

正確 錯誤
34. 一般而言,兔子在出生兩個月后,就有繁殖能力,一對兔子每個月能生出一對小兔子來。如果所有兔子都不死,那么一年以后可以繁殖多少對兔子?

經(jīng)分析,從第三個月起,每個月的兔子數(shù)是上個月與上上個月兔子之和。

請判讀以下程序是否正確。( )

#自定義函數(shù)

def fib(n): #斐波那契數(shù)列

if n<=2:

return 1

else:

return fib(n-1)+fib(n-2) #前兩個數(shù)字之和

#主程序,顯示每個月兔子數(shù)(斐波那契數(shù)列)

for i in range(1,13):

print("第",i,"個月兔子對數(shù)為:",fib(i))


正確 錯誤
35. 下列兩個代碼塊的功能一樣。( )

A.if(year%4)==0:

if(year%100)==0:

print(year)

B.if(year%4)==0 and (year%100)==0:

print(year)


正確 錯誤
三、編程題(共3題,共30分)
36. 換位密碼法是將明文中的字符位置通過一定的規(guī)則重新排列從而得到密文的一種加密方法。某換位密碼法加密方法如下:先把明文按照固定長度(4位一組)進行分組,然后對每一組的字符進行換位操作,從而得到密文。例如, 字符串"ceit",使用密鑰1432進行加密時,首先將字符串以 4 個字符為一組進行分組,然后對每組的字符進行換位,第1個和第3個字符位置不變,把第2個字符和第4個字符交換位置,從而得到密文"ctie"。小張編寫的程序如下,請完善劃線處的代碼:

def jiami(yw,key):

result = ''

for i in range(0, ① ,len(key)):

s1=yw[i:i+ len(key) ]

for j in range( ② ):

result = result + ③

return result

yw= input('請輸入待加密的明文:')

key= input('請輸入密鑰:')

mw= ④

print(mw)

運行結(jié)果如下圖所示:




37. 一張長方形的紙,長m米,寬n米(長寬均為整數(shù)),現(xiàn)在要把它剛好裁成一些正方形(邊長是整數(shù)),有幾種裁法,如果要使裁得的正方形面積最大,可以裁多少塊。小明學習了遞歸后,編寫程序如下,首先輸入長方形的長和寬,計算出結(jié)果。請完善劃線處的代碼:

def tj(a,b):

c = 0

minn = ①

if a > b:

minn = b

for i in range(1,minn+1):

if a % i == 0 and b % i == 0:

c = ②

return c

def gcd(a,b):

if b == 0:

return a

return ③

chang = int(input('輸入長方形的長 (單位cm)'))

kuan = int(input('輸入長方形的寬 (單位cm)'))

bianchang = gcd(chang,kuan)

total = ④

num = tj(chang,kuan)

print('------------結(jié)果如下-------------')

print('有{}種裁法'.format(num))

print('裁得的正方形面積最大邊長是{}cm,可以裁{}塊'.format(bianchang,total))


運行后的結(jié)果如下圖所示:



38. 商超采用會員制,客戶的消費信息如會員號、姓名和積分如下表所示,小方的爸爸想編寫一個客戶信息管理系統(tǒng),其中有一個功能是:輸入會員號,查詢該會員的積分。


小方知道后,就躍躍欲試,他首先從數(shù)據(jù)庫讀取客戶信息到列表data中,其中data[i][0]存儲第i條記錄的會員號,data[i][1]存儲第i條記錄的姓名,data[i][2]存儲第i條記錄的積分;他首先將數(shù)組data中數(shù)據(jù)按會員號升序排序,然后用二分查找算法查找會員號對應(yīng)的積分信息。代碼如下,完善劃線處的代碼:

def bubble_sort(d):

for i in range(len(d)-2):

for j in range(len(d)-1, ① ,-1):

if d[j][0] < d[j-1][0]:

d[j],d[j-1] = d[j-1],d[j]

def bin_ search(d, key):

i,j = 0, len(d)-1

while i <= j:

m=(i +j)//2

if ② :

return m

if key > d[m][0]:

i = m+1

else:

j = m-1

return -1

#從數(shù)據(jù)庫讀取會員信息存列表data中,代碼略

data=[[8011,'張飛',12345],[8012,'李強',34512],[7812,'李好',45321]]

bubble_sort(data)

key = int(input('輸入會員號:'))

m = ③

if m!=-1:

print (data[m][1],'先生/女士:您的積分是:',data[m][2])

else:

print('該會員號不正確')

2023年3月青少年軟件編程(Python)等級考試五級試題
答案+解析
一、單選題(共25題,共50分)
1. 運行下列程序,輸出的結(jié)果是?( )

def wenhao(name = 'zhejiang'):
print('hello' + name)
wenhao()


A. hello
B. hellozhejiang
C. helloname
D. 程序?qū)⑻崾具\行錯誤
試題編號:20230109-fcl-001
試題類型:單選題
標準答案:B
試題難度:一般
試題解析:定義函數(shù)時,可以指定形參的默認值。如果在調(diào)用函數(shù)時給函數(shù)提供了實參,Python將使用指定的實參,否則將自動調(diào)用形參的默認值。本題中,調(diào)用wenhao函數(shù)時沒有傳值,故使用函數(shù)的默認值作為函數(shù)的調(diào)用。因此選B
考生答案:B
考生得分:2
是否評分:已評分
評價描述:
2. 運行下列程序,輸出的結(jié)果是?( )

rst = lambda a,b=5:a*b

print(rst(5))


A. 5
B. 15
C. 25
D. 35
試題編號:20230109-fcl-004
試題類型:單選題
標準答案:C
試題難度:較難
試題解析:rst(5)傳入一個實參,a被賦值為5,b使用默認值5,因此結(jié)果是5*5=25,選C。
考生答案:C
考生得分:2
是否評分:已評分
評價描述:
3. 運行下列程序,輸出的結(jié)果是?( )

def jsarea(r, PI = 3.14):
area = PI * r * r
print(jsarea(1))


A. 3.14
B. 因缺失參數(shù),不能計算
C. None
D. 程序代碼有錯誤
試題編號:20230109-fcl-005
試題類型:單選題
標準答案:C
試題難度:一般
試題解析:函數(shù)jsarea中,沒有return語句,函數(shù)中計算的結(jié)果area不能傳遞給函數(shù)調(diào)用處,因此調(diào)用函數(shù)的結(jié)果是None。
考生答案:A
考生得分:0
是否評分:已評分
評價描述:
4. 運行下列程序,輸出的結(jié)果是?( )

def js(n):
s = 0
while n:
s = s * 10+n % 10
n //= 10
return s
print(js(20230110))


A. 20230110
B. 01103202
C. 2301102
D. 1103202
試題編號:20230109-fcl-011
試題類型:單選題
標準答案:D
試題難度:一般
試題解析:函數(shù)js的功能是計算n的逆序數(shù),因此選D
考生答案:D
考生得分:2
是否評分:已評分
評價描述:
5. 在傳遞信息的過程中, 通常會將一些敏感信息進行加密,以下是對數(shù)據(jù)進行加密的Python程序段,若輸入數(shù)據(jù)為“cie0108”,則輸出的結(jié)果是?( )

def jm(t):
s = ""
for ch in t:
if "0" <= ch <= "9":
x = int(ch) + 3
if x >= 10:
x = x % 10
ch = str(x)
s = s + ch
return s
print(jm('cie0108'))


A. 1343eic
B. 0108cie
C. cie3431
D. 3431cie
試題編號:20230109-fcl-013
試題類型:單選題
標準答案:C
試題難度:較難
試題解析:函數(shù)jm中對原文進行處理,若是字母,不變,累加;若是數(shù)字, 轉(zhuǎn)為整型加3然后求其個位上的數(shù),因此答案是cie3431,選C。
考生答案:C
考生得分:2
是否評分:已評分
評價描述:
6. 運行下列程序,輸出的結(jié)果是?( )

s = 0
def f(n):
global s
for i in range(n):
s = s + i
return s
print(f(f(3)))


A. 3
B. 6
C. 9
D. 0
試題編號:20230109-fcl-014
試題類型:單選題
標準答案:B
試題難度:較難
試題解析:在函數(shù)f中,變量s定義為global全局變量,第一次調(diào)用f(3)后返回的結(jié)果是3,此時變量s的值變成3,再次調(diào)用函數(shù)f(3)時,因s的初值已經(jīng)是3了,因此結(jié)果是6。
考生答案:A
考生得分:0
是否評分:已評分
評價描述:
7. 運行下列程序后,輸出的結(jié)果是?( )

def jsh(n):
if n == 1:
return 1
else:
return n + jsh(n-1)
print(jsh(10))


A. 1
B. 35
C. 45
D. 55
試題編號:20230109-fcl-021
試題類型:單選題
標準答案:D
試題難度:一般
試題解析:遞歸思想求解1到n之間和,因此答案選D。
考生答案:D
考生得分:2
是否評分:已評分
評價描述:
8. 運行下列程序后,輸出的結(jié)果是?( )

def fun(s):
if len(s) == 1:
return s
else:
return fun(s[1:]) + s[0]
print(fun('CIE2023'))


A. 3202EIC
B. EIC3202
C. 3220EIC
D. EIC2023
試題編號:20230109-fcl-023
試題類型:單選題
標準答案:A
試題難度:較難
試題解析:函數(shù)fun遞歸實現(xiàn)字符串s逆序,因此選A。
考生答案:A
考生得分:2
是否評分:已評分
評價描述:
9. 下列有關(guān)遞歸的描述中,正確的是?( )

A. 遞歸函數(shù)中肯定有循環(huán)結(jié)構(gòu);
B. 遞歸沒有體現(xiàn)“大事化小”的思想;
C. 遞歸有明確的結(jié)束遞歸的邊界條件;
D. 遞歸執(zhí)行效率較高。
試題編號:20230109-fcl-026
試題類型:單選題
標準答案:C
試題難度:較難
試題解析:遞歸有明確的結(jié)束遞歸的邊界條件以及結(jié)束時的邊界值,遞歸體現(xiàn)了“大事化小”的思想。
考生答案:C
考生得分:2
是否評分:已評分
評價描述:
10. 運行下列程序,運行的結(jié)果是?(?。?br/>
def leijia(x):
x += 1
return x
x=10
y=leijia(x)
print(y)


A. 1
B. 10
C. 11
D. None
試題編號:20230110-fcl-002
試題類型:單選題
標準答案:C
試題難度:一般
試題解析:將實參10傳遞給函數(shù)leijia中的形參x,x加1后得到11,并通過return返回給y,因此選C。
考生答案:C
考生得分:2
是否評分:已評分
評價描述:
11. 關(guān)于分治算法特征的描述中,錯誤的是?(?。?br/>
A. 當問題的規(guī)??s小到一定的程度就可以容易地解決;
B. 問題可以分解為若干個規(guī)模較小的相同問題;
C. 該問題所分解出的各個子問題是可以相互獨立,也可以相互交叉;
D. 該問題分解出的子問題的解可以合并為該問題的解。
試題編號:20230110-fcl-027
試題類型:單選題
標準答案:C
試題難度:一般
試題解析:該問題所分解出的各個子問題是相互獨立,即該問題具有最優(yōu)子結(jié)構(gòu)性質(zhì)。
考生答案:C
考生得分:2
是否評分:已評分
評價描述:
12. 張老師有n(范圍在1到15之間)個禮物分給同學們,他請同學們猜禮物的數(shù)量,請問同學們猜幾次后肯定知道禮物的數(shù)量(不算運氣成分第1次或第2次就猜到)?(?。?br/>
A. 15
B. 7
C. 4
D. 3
試題編號:20230110-fcl-028
試題類型:單選題
標準答案:C
試題難度:一般
試題解析:二分查找特征,15個禮物,每次對半猜,4次后肯定知道結(jié)果。
考生答案:C
考生得分:2
是否評分:已評分
評價描述:
13. 下列排序算法中,時間復雜度最小的是?(?。?br/>
A. 插入排序
B. 冒泡排序
C. 快速排序
D. 選擇排序
試題編號:20230110-fcl-032
試題類型:單選題
標準答案:C
試題難度:較難
試題解析:快速排序時間復雜度是O(nlogn),其他都是O(n*n)。
考生答案:
考生得分:0
是否評分:已評分
評價描述:
14. 小方要在程序中生成[10,99]之間的隨機整數(shù),下列程序不能實現(xiàn)的是?( )

A. import random
a = random.randint(10,99)
B. import random as t
a = t.randint(10,99)
C. from random import randint
a = randint(10,99)
D. from random import randint as t
a = t.randint(10,99)
試題編號:20230110-fcl-034
試題類型:單選題
標準答案:D
試題難度:一般
試題解析:選項A,B,C均正確。
考生答案:
考生得分:0
是否評分:已評分
評價描述:
15. 下列哪個關(guān)鍵字可用來創(chuàng)建自定義函數(shù)?( )

A. function;
B. def;
C. class;
D. procedure。
試題編號:20230206-zwy-001
試題類型:單選題
標準答案:B
試題難度:一般
試題解析:def 關(guān)鍵字可用來創(chuàng)建自定義函數(shù)
考生答案:B
考生得分:2
是否評分:已評分
評價描述:
16. 在 Python 語言中,求列表長度用下列哪個函數(shù)?(?。?br/>
A. size
B. len
C. length
D. str
試題編號:20230206-zwy-003
試題類型:單選題
標準答案:B
試題難度:一般
試題解析:在 Python 語言中,求列表長度用len 函數(shù)
考生答案:B
考生得分:2
是否評分:已評分
評價描述:
17. 下列關(guān)于函數(shù)返回值的描述中,正確的是?(?。?br/>
A. Python函數(shù)的返回值使用很靈活,可以沒有返回值,可以有一個或多個返回值。
B. 函數(shù)定義中最多含有一個return語句。
C. 在函數(shù)定義中使用return語句時,至少給一個返回值
D. 函數(shù)只能通過print語句和return語句給出運行結(jié)果
試題編號:20230206-zwy-005
試題類型:單選題
標準答案:A
試題難度:一般
試題解析:Python函數(shù)的返回值使用很靈活,可以沒有返回值,可以有一個或多個返回值,是正確的。
考生答案:A
考生得分:2
是否評分:已評分
評價描述:
18. 下列有關(guān)自定義函數(shù)的描述,正確的是?(?。?br/>
A. 函數(shù)的定義必須在程序的開頭;
B. 函數(shù)定義后,其中的程序可以自動執(zhí)行;
C. 函數(shù)定義后需要調(diào)用才會執(zhí)行;
D. 函數(shù)體與關(guān)鍵字必須左對齊。
試題編號:20230206-zwy-011
試題類型:單選題
標準答案:C
試題難度:一般
試題解析:函數(shù)定義后需要調(diào)用才會執(zhí)行。
考生答案:C
考生得分:2
是否評分:已評分
評價描述:
19. 運行下列程序,輸出的結(jié)果是?( )
Sum=1
for i in range (1,5):
Sum=Sum*i
print(Sum,i)

A. 24;5
B. 120;5
C. 24;4
D. 120;4
試題編號:20230206-zwy-012
試題類型:單選題
標準答案:C
試題難度:一般
試題解析:Sum=1
for i in range (1,5):
Sum=Sum*i
print(Sum,i)
輸出是24, 4
考生答案:B
考生得分:0
是否評分:已評分
評價描述:
20. 關(guān)于下列代碼的描述,錯誤的是?( )
def fact(n):
s=1
for i in range(1,n+1):
s*=i
return s

A. s不能在函數(shù)外使用
B. range()函數(shù)是Python內(nèi)置函數(shù)
C. 如果n=4,返回的值為24
D. 代碼中n是可選參數(shù)
試題編號:20230206-zwy-013
試題類型:單選題
標準答案:D
試題難度:一般
試題解析:代碼中n是可選參數(shù)是錯誤的。
考生答案:C
考生得分:0
是否評分:已評分
評價描述:
21. 某人將自己密碼旅行箱的密碼遺忘了。當事人記起密碼是一個三位自然數(shù),并且密碼個位數(shù)是8,其它位含1但不能確定是哪一位。請將所有可能的密碼遍歷出來。

請完成程序并運行?( )

for x in range(100,__ ①__): #三位密碼的范圍

if ____ ②___ and "1" in str(x): #符合條件的密碼

print(x)


A. 999;x%10=8
B. 999:x%10==8
C. 1000;x%10=8
D. 1000;x%10==8
試題編號:20230206-zwy-019
試題類型:單選題
標準答案:D
試題難度:一般
試題解析:
考生答案:B
考生得分:0
是否評分:已評分
評價描述:
22.
甲同學第一天跳繩100下,第二天開始每天增加5下;乙同學第一天跳繩100下,每隔一天增加10下。計算30天兩人的跳繩總數(shù)。

甲的跳繩數(shù):100、105、110、115、120……

乙的跳繩數(shù):100、100、110、110、120……

請補全程序代碼?( )

a=100 #甲同學第一天跳繩次數(shù)

b=100 #乙同學第一天跳繩次數(shù)

x=a #甲同學累計跳繩次數(shù),初始值是第一天的次數(shù)

y=b #乙同學累計跳繩次數(shù),初始值是第一天的次數(shù)

#從第二天開始迭代計算

for i in range(2,31):

a= ① #甲同學每天增加5次

if i%2==1: #當天數(shù)為奇數(shù)時

b= ② #乙同學增加10次

x=x+a

y=y+b

print("甲同學30天跳繩",x,"下")

print("乙同學30天跳繩",y,"下")


A. a+5;b+10
B. +5;+10
C. a+10;b+5
D. +10;+5
試題編號:20230206-zwy-023
試題類型:單選題
標準答案:A
試題難度:一般
試題解析:
考生答案:A
考生得分:2
是否評分:已評分
評價描述:
23. 用遞歸算法計算10的階乘10!的值#自定義階乘函數(shù)。自定義函數(shù)fact(n)是求n的階乘。

10!=1×2×3×…×10

請補全程序代碼?( )

#自定義函數(shù)

def fact(n): #求階乘

if(n==1): #終止條件

return 1 #結(jié)束遞歸

else: #遞歸條件

p=__①____ #調(diào)用遞歸(自身)

return p #返回乘積

#主程序

print("10!=",fact(10)) #調(diào)用遞歸


A. n*fact(n-1)
B. n*fact(n)
C. n*fact(n+1)
D. n**fact(n)
試題編號:20230206-zwy-024
試題類型:單選題
標準答案:A
試題難度:一般
試題解析:
考生答案:A
考生得分:2
是否評分:已評分
評價描述:
24. 用分治法查找列表中是否存在指定的數(shù)字。給定的列表已升序排序。請補全程序代碼?( )

#在列表cards中查找數(shù)字x,返回下標值,若未找到,返回-1

def serch(cards=list,x=int):

a=0 #定義左端點下標

b=len(cards)-1 #定義右端點下標

#逐級分割查找范圍,縮小查找規(guī)模

while a<=b:

m=(a+b)//2 #定義中點下標

if x==cards[m]: #x剛好等于中點值

return m

elif ① : #x<中點值,說明x位于左段位置

b=m-1 #重新定義右端點

else:

a=m+1 #重新定義左端點

return -1 #未找到,返回-1

#主程序

#在列表d中查找用戶輸入的數(shù)字r

d=[1,6,16,24,44,46,79,80,81,82,87,102,134,151,156,188,196,202,212,226,228,248,272,274,286,306,321,351,363]

print(d) #顯示一下列表d

r=int(input("請輸入要查找的數(shù)字:"))

y=serch(d,r) #調(diào)用子函數(shù),d,r是實參

if y>=0:

print("已找到",r,",它是列表中第",y+1,"個數(shù)字")

else:

print("未找到",r)


A. x
B. x
C. x>cards[m-1]
D. x>cards[m]
試題編號:20230206-zwy-027
試題類型:單選題
標準答案:B
試題難度:較難
試題解析:x
每次從中間分隔,這個實際上是二分法。分治法查找可以大規(guī)模減少比對次數(shù),但是,原數(shù)據(jù)必須排序。
考生答案:D
考生得分:0
是否評分:已評分
評價描述:
25. 下列不屬于Python數(shù)據(jù)分析與可視化第三方庫的是?(?。?br/>
A. pandas
B. matplotlib
C. opencv
D. numpy
試題編號:20230206-zwy-033
試題類型:單選題
標準答案:C
試題難度:一般
試題解析:opencv不屬于python數(shù)據(jù)分析與可視化第三方庫
考生答案:
考生得分:0
是否評分:已評分
評價描述:
二、判斷題(共10題,共20分)
26. 關(guān)鍵字實參通過“關(guān)鍵字=值”的方式傳值,不需要考慮函數(shù)調(diào)用過程中形參的順序。(?。?br/>
正確 錯誤
試題編號:20230109-fcl-003
試題類型:判斷題
標準答案:正確
試題難度:容易
試題解析:關(guān)鍵字實參通過“關(guān)鍵字=值”的方式傳值,不需要考慮函數(shù)調(diào)用過程中形參的順序。
考生答案:正確
考生得分:2
是否評分:已評分
評價描述:
27. 函數(shù)是將實現(xiàn)相同功能的代碼封裝在一起,實現(xiàn)代碼復用。(?。?br/>
正確 錯誤
試題編號:20230109-fcl-006
試題類型:判斷題
標準答案:正確
試題難度:容易
試題解析:函數(shù)是將實現(xiàn)相同功能的代碼封裝在一起,實現(xiàn)代碼復用。
考生答案:錯誤
考生得分:0
是否評分:已評分
評價描述:
28. 創(chuàng)建自定義函數(shù)時,不需要聲明函數(shù)形參的類型,形參的類型由調(diào)用自定義函數(shù)時傳遞的實參類型確定。( )

正確 錯誤
試題編號:20230109-fcl-017
試題類型:判斷題
標準答案:正確
試題難度:一般
試題解析:創(chuàng)建自定義函數(shù)時,不需要聲明函數(shù)形參的類型,形參的類型由調(diào)用自定義函數(shù)時傳遞的實參類型確定。
考生答案:正確
考生得分:2
是否評分:已評分
評價描述:
29. 遞推是按照一定的規(guī)律計算序列中的每一項,通常是通過計算前面的一些項來計算后一項的值。(?。?br/>
正確 錯誤
試題編號:20230109-fcl-022
試題類型:判斷題
標準答案:正確
試題難度:容易
試題解析:遞推是按照一定的規(guī)律計算序列中的每一項,通常是通過計算前面的一些項來計算后一項的值。
考生答案:正確
考生得分:2
是否評分:已評分
評價描述:
30. 某同學用天平稱量的過程如下:先放置100克砝碼,砝碼偏重;再將砝碼改為50克,砝碼偏輕;又將砝碼改為75克……通過這種策略,該同學很快完成物品稱重工作,這體現(xiàn)了分治思想。(?。?br/>
正確 錯誤
試題編號:20230109-fcl-029
試題類型:判斷題
標準答案:正確
試題難度:一般
試題解析:該同學稱量的過程體現(xiàn)了分治思想。
考生答案:正確
考生得分:2
是否評分:已評分
評價描述:
31. 使用"pip install-upgrade pandas"命令能夠升級pandas庫。(?。?br/>
正確 錯誤
試題編號:20230110-fcl-033
試題類型:判斷題
標準答案:正確
試題難度:一般
試題解析:使用"pip install-upgrade 包名" 命令能夠更新已經(jīng)安裝的第三方庫。
考生答案:正確
考生得分:2
是否評分:已評分
評價描述:
32. Python中調(diào)用close()函數(shù)可實現(xiàn)對文件內(nèi)容的讀取。(?。?br/>
正確 錯誤
試題編號:20230206-zwy-008
試題類型:判斷題
標準答案:錯誤
試題難度:一般
試題解析:Python中調(diào)用read()函數(shù)可實現(xiàn)對文件內(nèi)容的讀取。
考生答案:錯誤
考生得分:2
是否評分:已評分
評價描述:
33. 下面的程序會輸出兩個值。( )
def r(a,b):
s=a+b
b+=1
return s
print(r(3,8))

正確 錯誤
試題編號:20230206-zwy-017
試題類型:判斷題
標準答案:錯誤
試題難度:一般
試題解析:def r(a,b):
s=a+b
b+=1
return s
print(r(3,8))
上面的程序不會輸出兩個值。
考生答案:錯誤
考生得分:2
是否評分:已評分
評價描述:
34. 一般而言,兔子在出生兩個月后,就有繁殖能力,一對兔子每個月能生出一對小兔子來。如果所有兔子都不死,那么一年以后可以繁殖多少對兔子?

經(jīng)分析,從第三個月起,每個月的兔子數(shù)是上個月與上上個月兔子之和。

請判讀以下程序是否正確。( )

#自定義函數(shù)

def fib(n): #斐波那契數(shù)列

if n<=2:

return 1

else:

return fib(n-1)+fib(n-2) #前兩個數(shù)字之和

#主程序,顯示每個月兔子數(shù)(斐波那契數(shù)列)

for i in range(1,13):

print("第",i,"個月兔子對數(shù)為:",fib(i))


正確 錯誤
試題編號:20230206-zwy-026
試題類型:判斷題
標準答案:正確
試題難度:一般
試題解析:
考生答案:正確
考生得分:2
是否評分:已評分
評價描述:
35. 下列兩個代碼塊的功能一樣。( )

A.if(year%4)==0:

if(year%100)==0:

print(year)

B.if(year%4)==0 and (year%100)==0:

print(year)


正確 錯誤
試題編號:20230206-zwy-032
試題類型:判斷題
標準答案:正確
試題難度:一般
試題解析:
考生答案:正確
考生得分:2
是否評分:已評分
評價描述:
三、編程題(共3題,共30分)
36. 換位密碼法是將明文中的字符位置通過一定的規(guī)則重新排列從而得到密文的一種加密方法。某換位密碼法加密方法如下:先把明文按照固定長度(4位一組)進行分組,然后對每一組的字符進行換位操作,從而得到密文。例如, 字符串"ceit",使用密鑰1432進行加密時,首先將字符串以 4 個字符為一組進行分組,然后對每組的字符進行換位,第1個和第3個字符位置不變,把第2個字符和第4個字符交換位置,從而得到密文"ctie"。小張編寫的程序如下,請完善劃線處的代碼:

def jiami(yw,key):

result = ''

for i in range(0, ① ,len(key)):

s1=yw[i:i+ len(key) ]

for j in range( ② ):

result = result + ③

return result

yw= input('請輸入待加密的明文:')

key= input('請輸入密鑰:')

mw= ④

print(mw)

運行結(jié)果如下圖所示:




試題編號:202303-P4-36
試題類型:編程題
標準答案:
參考程序:

def jiami(yw,key):

result = ''

for i in range(0,len(yw),len(key)):

s1=yw[i:i+len(key)]

for j in range(len(key)):

result = result + s1[int(key[j])-1]

return result

yw= input('請輸入待加密的明文:')

key= input('請輸入密鑰:')

mw= jiami(yw,key)

print(mw)

試題難度:一般
試題解析:
評分標準:

(1)len(yw);(2分)

(2)len(key);(3分)

(3)s1[int(key[j])-1];(4分)

(4)jiami(yw,key)。(3分)

展示地址:點擊瀏覽
考生答案:(此題已作答)
考生得分:3
是否評分:已評分
評價描述:
37. 一張長方形的紙,長m米,寬n米(長寬均為整數(shù)),現(xiàn)在要把它剛好裁成一些正方形(邊長是整數(shù)),有幾種裁法,如果要使裁得的正方形面積最大,可以裁多少塊。小明學習了遞歸后,編寫程序如下,首先輸入長方形的長和寬,計算出結(jié)果。請完善劃線處的代碼:

def tj(a,b):

c = 0

minn = ①

if a > b:

minn = b

for i in range(1,minn+1):

if a % i == 0 and b % i == 0:

c = ②

return c

def gcd(a,b):

if b == 0:

return a

return ③

chang = int(input('輸入長方形的長 (單位cm)'))

kuan = int(input('輸入長方形的寬 (單位cm)'))

bianchang = gcd(chang,kuan)

total = ④

num = tj(chang,kuan)

print('------------結(jié)果如下-------------')

print('有{}種裁法'.format(num))

print('裁得的正方形面積最大邊長是{}cm,可以裁{}塊'.format(bianchang,total))


運行后的結(jié)果如下圖所示:



試題編號:202303-P4-37
試題類型:編程題
標準答案:
參考程序:



試題難度:一般
試題解析:
評分標準:

(1)a;(2分)
(2)c + 1;(2分)
(3)gcd(b,a%b);(3分)
(4)(chang // bianchang) * (kuan // bianchang)或等價答案。(3分)

展示地址:點擊瀏覽
考生答案:(此題已作答)
考生得分:2
是否評分:已評分
評價描述:
38. 商超采用會員制,客戶的消費信息如會員號、姓名和積分如下表所示,小方的爸爸想編寫一個客戶信息管理系統(tǒng),其中有一個功能是:輸入會員號,查詢該會員的積分。


小方知道后,就躍躍欲試,他首先從數(shù)據(jù)庫讀取客戶信息到列表data中,其中data[i][0]存儲第i條記錄的會員號,data[i][1]存儲第i條記錄的姓名,data[i][2]存儲第i條記錄的積分;他首先將數(shù)組data中數(shù)據(jù)按會員號升序排序,然后用二分查找算法查找會員號對應(yīng)的積分信息。代碼如下,完善劃線處的代碼:

def bubble_sort(d):

for i in range(len(d)-2):

for j in range(len(d)-1, ① ,-1):

if d[j][0] < d[j-1][0]:

d[j],d[j-1] = d[j-1],d[j]

def bin_ search(d, key):

i,j = 0, len(d)-1

while i <= j:

m=(i +j)//2

if ② :

return m

if key > d[m][0]:

i = m+1

else:

j = m-1

return -1

#從數(shù)據(jù)庫讀取會員信息存列表data中,代碼略

data=[[8011,'張飛',12345],[8012,'李強',34512],[7812,'李好',45321]]

bubble_sort(data)

key = int(input('輸入會員號:'))

m = ③

if m!=-1:

print (data[m][1],'先生/女士:您的積分是:',data[m][2])

else:

print('該會員號不正確')


試題編號:202303-P4-38
試題類型:編程題
標準答案:
參考程序:

def bubble_sort(d):
for i in range(len(d)-2):
for j in range(len(d)-1, i,-1):
if d[j][0] < d[j-1][0]:
d[j],d[j-1] = d[j-1],d[j]
def bin_search(d, key):
i,j = 0, len(d)-1
while i <= j:
m=(i +j)//2
if d[m][0] == key:
return m
if key > d[m][0]:
i = m+1
else:
j = m-1
return -1
#從數(shù)據(jù)庫讀取會員信息存列表data中,代碼略
data=[[8011,'張飛',12345],[8012,'李強',34512],[7812,'李好',45321]]
bubble_sort(data)
key = int(input('輸入會員號:'))
m = bin_search(data,key)
if m!=-1:
print (data[m][1],'先生/女士:您的積分是:',data[m][2])
else:
print('該會員號不正確')

試題難度:一般
試題解析:
評分標準:

(1)i;(2分)
(2)d[m][0] == key;(3分)
(3)bin_search(data,key)。(3分)


展示地址:點擊瀏覽
考生答案:(此題已作答)
考生得分:0
是否評分:已評分
評價描述:

展開更多......

收起↑

資源列表

<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. 主站蜘蛛池模板: 原平市| 盐亭县| 仲巴县| 怀集县| 西城区| 吉安市| 荔波县| 凤凰县| 庆云县| 阳泉市| 如东县| 和林格尔县| 双流县| 台州市| 平阴县| 寻乌县| 崇文区| 上饶市| 纳雍县| 枞阳县| 临安市| 林甸县| 垣曲县| 静乐县| 汽车| 闸北区| 襄城县| 罗定市| 松江区| 佛学| 河南省| 永宁县| 永安市| 肥乡县| 越西县| 东明县| 安陆市| 永定县| 南平市| 蒙阴县| 嘉善县|