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

2022年小學NOC 圖形化、Python初賽題目(PDF版,含答案)

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

2022年小學NOC 圖形化、Python初賽題目(PDF版,含答案)

資源簡介

NOC Python初賽考題
一、單選題
1.運行以下代碼,終端區會出現什么內容?
A:9
B:0
C:25
D:終端區會報錯
答案:C
解析:count 函數中有一個參數 a,運行函數時,函數會遍歷傳入的列表,并且將其中的元
素裝進變量 i 中,累加進 result 變量里。
在最后一行代碼中,將 num_list 列表作為函數的參數,所以就是將 列表中所有元素都加在
一起,所以最后的結果是 25 。
2.以下關于列表的表述中,錯誤的是?
A:我們可以使用 == 符號判斷兩個列表是否相同
B:Python 中的列表可以嵌套,形成二維列表
C:+ 號可以拼接兩個列表
D:列表和字符串一樣,都是不可變的
答案:D
解析:列表是可變的,元組是不可變的。
3.對于字典 d={'abc':1, 'qwe':2, 'zxc':3}, 現在 len(d) 這個語句的結果是什么呢?
A:6
B:3
C:12
D:9
答案:B
解析:字典的長度也就是鍵的個數。所以結果是 3 。
4.假設變量 string 中存儲著一個字符串"編程競賽",下面哪段代碼可以獲得 string 從右到
左的第三個字符呢?
A:string[3]
B:string[-3]
C:string[:-3]
D:string[0:-3]
答案:B
解析:在 Python 中,我們可以通過負數索引,反向獲得字符串中的元素,比如說 d[-1] 表
示的就是倒數第一個字符,所以正確答案選 B。
5.以下選項中不是 Python 語言的保留字的是?
A:except
B:do
C:pass
D:while
答案:B
解析:在 Python 中,沒有 do 這個關鍵字。
6.以下選項中不符合 Python 語言變量命名規則的是?
A:I
B:3_1
C:_AI
D:TempStr
答案:B
解析:在 Python 中,變量的開頭不能是數字。
7.關于 Python 語言的特點,以下選項描述正確的是?
A:Python 語言不支持面向對象
B:Python 語言是解釋型語言
C:Python 語言是編譯型語言
D:Python 語言是非跨平臺語言
答案:B
解析:Python 是解釋型的語言,它可以跨平臺工作,也支持面向對象編程。
8.將列表 [1, 3, 0, 4, 2, 6, 5] 進行排序,并將過程中的結果打印如下:
[1, 3, 0, 4, 2, 6, 5]
[1, 3, 0, 4, 2, 6, 5]
[0, 1, 3, 4, 2, 6, 5]
[0, 1, 3, 4, 2, 6, 5]
[0, 1, 2, 3, 4, 6, 5]
[0, 1, 2, 3, 4, 6, 5]
[0, 1, 2, 3, 4, 5, 6]
請問使用的是一下那種排序算法呢?
A:快速排序
B:冒泡排序
C:選擇排序
D:插入排序
答案:D
解析:插入排序的基本思想是將一個數據插入一個已經有序的列表中,生成一個新的有序列
表。對一個亂序列表進行插入排序的思路是,遍歷列表,依次取出列表中的數據,與前面的
數據一一進行比較,如果比前一個數據小,就交換位置,直到遍歷完列表的最后一個數據為
止。
9.random 庫用來生成隨機數的算法是?
A:平方取中法
B:線性同余法
C:梅森旋轉算法
D:蒙特卡洛方法
答案:C
解析:梅森旋轉算法是一個偽隨機數發生算法,是 random 庫的默認偽隨機數產生器。
10.下列可以生成詞云的庫是?
A:jieba
B:wordcloud
C:beautifulsoup4
D:requests
答案:B
解析:wordcloud 是 Python 的一個第三方庫,用于生成詞云圖片。
11.Python 中,用來定義函數的關鍵字是?
A:return
B:define
C:def
D:function
答案:C
解析:def 是 Python 中用來定義函數的關鍵字。
12.運行下面這段代碼,輸出的結果是?
A:
B:
C:
D:
答案:A
解析:type() 函數用于返回對象的類型。
13.代碼 print( 10 / 2 == 5.0) 輸出的結果是?
A:True
B:False
C:-1
D:0
答案:A
解析:/代表除法運算,除法運算的結果是浮點數。所以 10/2 結果是 5.0。
14.執行 for i in range(5) 的循環,i 的值分別是多少?
A:1 2 3 4 5
B:0 0 0 0 0
C:5 5 5 5 5
D:0 1 2 3 4
答案:D
解析:range() 函數可用于創建一個整數列表,只傳入一個參數時,生成的整數列表會從 0 開
始,依次遞增 1 ,整數列表的長度就是傳入的參數。 range(5) 會返回 [0, 1, 2, 3, 4] 。
15.多分支使用的關鍵字是?
A:if
B:if-else
C:if-elif-else
D:else
答案:C
解析:單分支使用的關鍵字是 if ,二分支使用的關鍵字是 if-else ,多分支使用的關鍵字是
if-elif-else 。
16.下列條件中,可以判斷變量 a 等于變量 b 的條件是?
A:a = b
B:a >= b
C:a == b
D:a != b
答案:C
解析:在 Python 中,一個等號表示賦值,兩個等號會判斷相等。
17.下列選項中,數據類型是浮點型的是?
A:'7.0'
B:7
C:7.0
D:'7'
答案:C
解析:在 Python 中,浮點型由整數部分與小數部分組成。‘ ’用單引號或者“ ”雙引號
包裹起來的是字符串類型。
18.程序如下:
try:
number = int(input("請輸入數字:"))
print("number:",number)
except Exception as e:
print("打印異常詳情信息: ",e)
else:
print("else")
finally:
print("finally")
print("end")
我們輸入內容“z2”,控制臺打印的結果是:( )
A:number: 2
else
finally
end
B:number: 2
end
C:打印異常詳情信息: invalid literal for int() with base 10:
finally
end
D:打印異常詳情信息: invalid literal for int() with base 10:
else
finally
end
答案:C
解析:我們可以使用 try 和 except捕獲異常并處理異常。輸入的內容不是數字,會直接觸發
except語句。但是并不會進行 else 的判斷 finally 是不管什么情況,都會執行里面的代碼程序
正常順序運行,也會執行打印 end 的代碼。
19.在 Python 中交換 a 和 b 的值,可以怎么做呢?
A:a = b, b = a
B:a, a = b, b
C:a, b = a, b
D:a, b = b, a
答案:D
解析:在 Python 中,可以使用等號給多個變量賦值,從而實現變量值的交換。在等號兩邊
的值是一一對應的,在 A 答案中,先把 b 的值賦值給了 a,再把 a 中的值賦值給 b,這
里它們兩的值都是 b。在 B 答案中,兩次都將 b 的值賦值給 a,無法實現效果。在 C 答
案中,將 a 賦值給 b,將 b 賦值給 b,沒有變化,也無法實現效果。
20.如果用外循環 for j in range(count) 代表冒泡排序比較的輪次,那么內循環 for i in range()
應該每輪比較多少次呢?
A:i
B:count
C:i - j
D:count - j
答案:D
解析:外循環代表一共比較多少輪,這個數是列表的個數減一,內循環代表每輪比較的次數,
隨著比較的輪次增大,比較的次數逐漸減小,每輪應該比較 count - j 次。
21.下面哪個函數可以求出列表的個數 ?
A:str()
B:int()
C:len()
D:set()
答案:C
解析:len() 函數用于計算列表的長度,str() 用于將數據轉換為字符串,int() 用于將數據轉
換為整型,set() 用于將數據轉換為集合。
22.運行以下代碼后,程序打印的最大結果可能是?
A:12
B:13
C:16
D:17
答案:D
解析:random.choice() 函數的作用是隨機選擇一個元素,列表 nums 最大的值為 12;
random.randint(a, b) 函數的作用是生成一個范圍在 a <= n <= b 的隨機整數,最大值可能是 5;
所以打印的最大結果就是 5 + 12 = 17。
23.運行以下代碼后,程序打印的結果是?
A:6
B:6.5
C:10
D:10.66
答案:A
解析//符號的作用是進行取整除, num2 // num1 = 1 ;% 符號的作用是計算兩個數相除的
余數,num2 % num1 = 5,相加的結果就為 6 。
24.【賽事真題】
運行下方代碼段,輸出的結果是( )。
A:
B:
C:
D:
答案:A
解析:當程序在執行 for i in range(1, 5) 的時候,循環變量 i 的值依次是 1、2、3、4,小海
龜會畫出 4 個圓,而小海龜初始方向是朝著右邊,逆時針畫出的圓應該是 A 選項中的造

25.運行這段代碼,終端區會出現什么內容呢?
A:
B:
C:
D:
答案:A
解析:程序在執行 for i in range(5) 的時候,循環變量 i 的值是 0、1、2、3、4,因此 - i * 2
的值是 0,-2,-4,-6,-8
26.這里有一個二維列表,運行以下代碼,終端區會出現什么內容?
A:'菠蘿', '香蕉', '西瓜'
B:'蘋果'
C:['桃子', '蘋果', '芒果']
D:['菠蘿', '香蕉', '西瓜']
答案:D
解析:這是一個二維列表,在列表中還裝著兩個小列表,我們取出編號 1 的元素,那就是
第二個列表,打印出來是一個列表 ['菠蘿', '香蕉', '西瓜']。
27.如果要判斷一個變量 lcm 是不是 num1 和 num2 的公倍數,判斷條件可以怎么寫?
A:
B:
C:
D:
答案:C
解析:根據公倍數的概念,如果一個數字即是 num1 的倍數又是 num2 的倍數,則該數就
是這兩個數字的公倍數,需要使用到取余運算符來進行判斷。
28.下面的說法中,正確的是?
A:break 語句只能用來停止 for 循環
B:break 語句可以中斷所有程序的運行
C:break 語句可以用來中斷循環的語句
D:break 語句無法中斷 while 語句
答案:C
解析:break 語句是用來中斷循環語句的運行的,沒法中斷所有程序的運行哦。
29.運行以下代碼,終端區會出現什么內容?
A:晚安,依古比古
晚安,依古比古
B:晚安,依古比古
晚安,依古比古
晚安,依古比古
C:晚安,依古比古
晚安,依古比古
晚安,依古比古
晚安,依古比古
D:晚安,依古比古
晚安,依古比古
晚安,依古比古
晚安,依古比古
晚安,依古比古
答案:D
解析:邏輯運算符 or 連接兩個條件時,只要其中一個條件成立,整個表達式就成立,所以
在 b 是 0 、1、2、3、4 的時候,都會打印內容,直到 b = 5,,此時 a 也是 5,兩個式子
都不成立,循環就會結束。
30.運行以下代碼,終端區會出現什么內容?
A:重復打印無數次【晚安,瑪卡巴卡】
B:終端區什么都不會打印
C:只打印一次【晚安,瑪卡巴卡】
D:重復打印 100 次【晚安,瑪卡巴卡】
答案:B
解析:while后面的條件不成立,程序不會重復執行下面的代碼
31.下面的語句中,哪個可以在終端區中打印出 True 呢?
A:print( 12 >= 56 )
B:print( 123 > 3 and 55 == '55')
C:print( 3 >= 5 )
D:print(123 > 3 or 55 == '55')
答案:D
解析:and 語句是兩個條件同時成立時,結果才是 True。or 語句是兩個條件只要有一個成
立,結果就是 True,所以最后的結果選 D。
32.運行這段代碼,終端區會出現什么樣的內容呢?
A:111
B:222
C: 111
222
D:什么都不會出現
答案:B
解析第一個條件 10 > 11 不成立,不會打印 111,第二個條件 20 < 30 成立,會打印出 222
33.下面的說法中,哪個是錯誤的?
A:and 語句表示的是兩個條件同時成立才算成立
B:or 語句表示的是兩個條件中只要有一個成立就算成立
C:and 語句和 or 語句都可以將兩個條件連接起來
D:and 語句和 or 語句只能單獨使用,不能混在一起用
答案:D
解析:在 Python 中,我們可以將邏輯運算符結合起來使用,比如說 1 > 2 and 5 > 6 or 4 > 3,
需要注意的是,和運算符一樣,邏輯運算符也有優先級,and 的優先級就比 or 的高,所以
我們會先判斷 and 連接的兩個語句,之后再判斷 or 連接的語句。
34.以下程序的輸出的 CSV 文件里,存儲的內容是:( )
file = open('text.csv','w')
list =[ [90,87,93],[87,90,89],[78,98,97]]
b = []
for i in list:
for j in i:
b.append(str(j))
file.write(','.join(b))
file.close()
A:[90,87,93,87,90,89,78,98,97]
B:90,87,93 87,90,89 78,98,97
C: [[90,87,93], [87,90,89], [78,98,97]]
D:90,87,93,87,90,89,78,98,97
答案:D
解析:通過嵌套的 for 循環。取出了二維列表里面的每一個數字再使用 join 函數,可以把一
個列表拼接成一個字符串。并且每個元素之間都有一個“,”號
35.在 pygme 游戲設計中,檢測兩個矩形是否碰撞的方法是
A:colliderect()
B:collidepoint()
C:collidelist()
D:collidedict()
答案:A
解析:colliderect() 用于檢測 兩個圖形對應的 rect 是否重合;collidepoint() 用于檢測 一
個 rect 是否包含 點 ,輸入的參數為 點的坐標值。
36.在 pygame 中,調整游戲畫面幀數為 30 幀每秒的正確選項是
A:
clock = pygame.time.Clock()
clock.tick(300)
B:clock = pygame.time.Clock()
clock.tick(30)
C:clock = pygame.time.Clock()
clock.update(30)
D:clock = pygame.time.Clock()
clock.display(30)
答案:B
解析:clock = pygame.time.Clock()
clock.tick(30)
調整游戲畫面的刷新次數為每秒 30 幀,但是實際顯示中取決于各種因素的限制,比如電
腦性能或顯示器性能。
37.運行下方代碼段,輸出是( )。
A:
B:
C:
D:
答案:A
解析:在 draw_rect() 函數中,小海龜是左轉的,因此畫出的這正方形會在小海龜的右上方,
我們可以排除 BC 選項。
在執行 for i in range(4): 時,循環變量 i 依次是 0 、1 、2、3,所以畫出的正方形會一個
比一個大,但因為第一次是 0 ,就不會畫出正方形,因此最終我們看到的只有三個正方形
才對。
38.在 animal_list = [['獅子', '老虎'], ['河馬', '大象'], ['斑馬', '長頸鹿']]
這個二維列表中,以下哪句代碼可以取出'斑馬'這個元素?
A:animal_list[4]
B:animal_list[1][1]
C:animal_list[2][1]
D:animal_list[2][0]
答案:D
解析:首先,我們可以判斷,'斑馬'在第 3 個一維列表中, 那么就可以用 animal_list[2] 獲
取第三個一維列表,接著,可以發現'斑馬'是這個列表的第一項,那么索引就是 0,因此,
選 D
39.用割圓法繪制一個有 n 條邊的正多邊形時每次應旋轉的角度是
A:180 / n
B:n
C:90
D:360 / n
答案:D
解析:割圓法模擬畫圓,畫邊數為 n 的正多邊形需要旋轉 n 次轉完一周,每次旋轉的度數
就是 360 / n。
二、多選題
1.以下哪個 while 循環的使用方法是正確的?
A:while 5 > 3:
B:while num > 3:
C:while True:
D:while :
答案:ABC
解析:D 選項中沒有設置條件,其他的都正確的設置了條件。
2.哪個選項對 turtle.done()的描述是正確的?
A:turtle.done()是用來隱藏 turtle 繪制畫筆
B:turtle.done()用來停止畫筆繪制
C:turtle.done()是用來在繪畫結束后,保持繪畫的窗口不關閉的
D:我們必須要在程序的最后寫上 turtle.done(),不然程序運行會報錯
答案:BC
解析:turtle.done() 語句可以讓畫筆停止繪制,但是窗口不會關閉。一般我們會把這個語句
放在程序的最后,讓我們能夠看到程序最后的繪制結果。
3.關于 Python 的 lambda 函數,以下選項中描述正確的是?
A:lambda 用于定義簡單的,能夠在一行內表示的函數
B:可以使用 lambda 函數定義列表的排序原則
C:f = lambda x,y:x+y 執行后,f 的類型為數字類型
D:lambda 函數將函數名作為函數結果返回
答案:ABD
解析:f = lambda x,y:x+y 執行后, f 的類型是 function 。
4.現有 PAI = 3.1415926 作為浮點數變量,下列代碼可以將 PAI 保留三位小數并輸出的是?
A:print(f"{PAI:.5f}")
B:print(f"{PAI:0.3f}")
C:print(round(PAI, 3))
D:print(round(PAI))
答案:BC
解析:將浮點數小數點后保留三位數有兩種方法,一種是字符串格式化,一種是 round() 函
數。
5.運行下面這段代碼,輸出的結果是?
A:抽中的隨機數是 1,今天是星期一
B:抽中的隨機數是 2,今天是星期三
C:抽中的隨機數是 5,今天是星期六
D:抽中的隨機數是 7,今天是星期七
答案:AD
解析:隨機數的范圍是 1 - 7 ,可能抽中的數字范圍也是 1 - 7 ,字符串格式化的第二個變
量會取字典中對應值,所以數字和星期是一一對應的。
6.以下表達式的值為 True 的是?
A:5 + 3 < 10
B:3 > 2 == 2
C:a - 5 > 5
D:4 == '4.0'
答案:AB
解析:選項 C 中的變量 a 沒有進行賦值,無法判斷;選項 D 中,4 是整型,'4.0' 是字符
串,不相等。
7.在下列選項中,描述正確的有( )
s = input()
a = [s]
print(len(s) == len(a))
A:當輸入字母'a',打印出 True
B:當輸入字母'a',打印出 False
C:當輸入字母'abc',打印出 True
D:當輸入字母'abc',打印出 False
答案:AD
解析:當輸入‘a’,列表 a 就變成了 ['a'],len('a') 就是 1,len(['a'])也是 1。結果是 True。當輸
入‘abc’,列表 a 就變成了 ['abc'],len('abc') 就是 3,len(['abc'])還是 1。結果是 False
8.下面屬于 Python 中的保留字的有哪些
A:class
B:true
C:self
D:break
答案:AD
解析:在 Python 的保留字中,True,False,None 首字母需要大寫。self 不是保留字。
9.如果使用列表創建棧,需要用到的列表方法有
A:append()
B:insert()
C:index()
D:pop()
答案:AD
解析:
10.在下面這段程序中,其中 k 取什么值時,x 的值是 3。
if k<=10 and k>0:
if k >5:
if k>8:
x=0
else:
x=1
else:
if k>2:
x=3
else:
x=4
A:3
B:4
C:5
D:6
答案:ABC
解析:當 k<=5 并且 k>2 的時候,x 的值是 3。所以 k可以是 3,4,5
11.現在有一個字符串 s = 'abc123def',以下代碼中能正確獲得值 abc12 的代碼有?
A:print(s[0:5])
B:print(s[:5])
C:print(s[:-4])
D:print(s[:-4:2])
答案:ABC
解析:選項 D,打印的結果為 ac2。字符串的索引從第一個元素,也就是 0 開始增大。
從最后一個元素,也就是-1 開始減小。
12.下列屬于比較運算符的有
A:>
B:<
C:=
D:!=
答案:ABD
解析:了解 python 比較運行算符: > 、< 、==、 != 、>= , =<
13.使用代碼計算列表 maze 中有多少個 "1",代碼正確的是
maze = [
[1,1,1,1,1,1,1,1,1],
[1,0,1,0,0,0,0,0,1],
[1,0,1,1,0,1,1,1,1],
[1,0,0,0,0,1,0,0,1],
[1,0,1,1,0,1,0,1,1],
[1,0,0,1,0,0,0,0,1],
[1,1,0,1,0,1,1,1,1],
[1,0,0,1,0,0,0,0,1],
[1,1,1,1,1,1,1,1,1],
]
A:count = 0
for i in maze:
for j in i:
count += j
print(count)
B:count = []
for i in maze:
count.append(sum(i))
print(sum(count))
C:count = sum(maze)
print(count)
D:count = []
for i in maze:
count.extend(i)
print(sum(count))
答案:ABD
解析:求解思路 :
1、 使用嵌套循環遍歷所有元素,依次累加求和;
2、 使用 sum() 函數 , 首先對內部的列表求和 ,變成一維列表后,在使用 sum() 函數求
和計算 ;
3、 使用 extend() 函數將列表拼接為一維列表,使用 sum() 函數求和計算;
14.以下選項中,處理多個異常的代碼,正確的有哪些?
A:try:
pass
except (ValueError、IndexError) as err:
print('Error: {}'.format(err))
print('continue')
B:try:
pass
except (ValueError, IndexError) as err:
print('Error: {}'.format(err))
print('continue')
C:try:
pass
except ValueError as err:
print('Error: {}'.format(err))
except IndexError as err:
print('Error: {}'.format(err))
print('continue')
D:try:
pass
except ValueError, IndexError as err:
print('Error: {}'.format(err))
print('continue')
答案:BC
解析:多個異常,可以在一層像 B 選項一樣,用逗號隔開括號括起來捕獲;也可以像 C 選
項一樣,分 2 次分開捕獲。
15.對列表 m 與 列表 n 相同索引位置的元素求和。以下選項中正確的有?
m = [1,2,3]
n = [4,5,6]
A:res = []
for i in range(len(m)):
res.append(m[i]+n[i])
B:import numpy as np
res = (np.array(m) + np.array(n)).tolist()
C:res = m + n
D:無正確答案
答案:AB
解析:選項 A,正確
使用 for 循環進行計算,并將結果添加到列表中
res = []
for i in range(len(m)):
res.append(m[i]+n[i])
選項 B,正確
可以使用 numpy庫,把列表轉換為 narray 類型直接進行運算
res = np.array(m) + np.array(n)
print(res)
# 輸出為: array([5, 7, 9])
# 轉換為列表類型
print(res.tolist())
# 輸出為: [5, 7, 9]
選項 C,錯誤
列表使用 "+" ,不是用于列表對應元素相加,而是用于列表的拼接
print(m+n)
# 輸出元素為 L:[1, 2, 3, 4, 5, 6]
16.字典內元素由哪兩部分組成
A:鍵
B:值
C:變量
D:整數
答案:AB
解析:字典內元素由鍵和值兩部分組成,鍵必須是唯一的,但值則不必。
17.以下能夠與 if 語句搭配使用的是
A:else if
B:elseif
C:else
D:elif
答案:CD
解析:選項 A、選項 B,在 Python 中沒有這樣的語法。
18.下列選項中,描述正確的是
A: / 在代表運算中代表取整數。
B:關系運算符中 == 代表數學中的等號。
C:邏輯運算符中,“與”運算時“有 0 為 0,全 1 為 1”。
D:關系運算符中的輸出結果是以 bool 形式出現,為 True 和 False。
答案:BC
解析:/ 在運算中代表取除法運算,// 在運算中代表向下取接近商的整數。
19.下列屬于 python 保留字的是
A:if
B:for
C:where
D:import
答案:ABD
解析:‘where’ 不是 Python 中的保留字。
20.下列變量名正確的是
A:a bc
B:_1abc
C:a1bc
D:1abc
答案:BC
解析:變量名可以包括字母、數字、下劃線,但是數字不能做為開頭,并且標識符不能包含
空格。
三、判斷題
1.表達式 78 == '78' or '上' in '天天向上' 的結果是 True。
答案:正確
解析:使用 or 邏輯運算符連接兩個條件,可以組合成新的條件,只有當兩邊的條件都成立
時,這個新的條件才成立,第一個條件中,整數類型 78 和字符串 '78' 是不相等的。第二
個條件中,只有當后面的字符串中,包含上字時才會成立,這個也是成立的,所以整個條件
成立。
2.Python 變量名區分大小寫,所以 student 和 Student 不是同一個變量。
答案:正確
解析:Python 變量名是區分大小寫的。
3.Python 標準庫 random 的方法 randint(m,n)用來生成一個[m,n]區間上的隨機整數。
答案:正確
解析:random.randint() 的參數就是用來控制隨機數的范圍。
4.Python 字典中的“鍵”不允許重復。
答案:正確
解析:Python 中確實不允許兩個鍵的值完全相同。
5.函數是代碼復用的一種方式。
答案:正確
解析:在 Python 中,我們可以將一段代碼創建成一個函數,調用這個函數,就可以多次使
用這段代碼。
6.使用 input() 語句可以直接獲得整數類型的數字。
答案:錯誤
解析:input 語句的結果,是字符串類型的,如果我們想要獲得用戶輸入的數字,需要使用
int 語句進行類型轉換。
7.條件判斷語句可以讓程序根據不同的情況做不同的事情
答案:正確
解析:根據條件是否成立,我們可以使用條件判斷語句 if...elif...else... 運行不同部分的代碼。
8.在 name = '小明' 這句代碼中,name 是變量的內容。
答案:錯誤
解析:在這句代碼中,name 是變量的名字,而 '小明' 這個字符串是變量的內容。
9.執行語句 from random import seed 之后,可以直接使用 randint() 函數。
答案:錯誤
解析:from random import seed 是精準導入的方式,導入的是 seed()函數,沒有導入 randint()
函數。因此不能直接調用。
10.in 是 Python 中的邏輯運算符。
答案:錯誤
解析:in 是 Python 中的成員運算符,它的返回結果是布爾值。
11.12 / 2 的運算結果是 6 。
答案:錯誤
解析:/ 是除法運算法,除法運算的結果一定是浮點數。
12.101"這個內容在 Python 是一個字符串。
答案:錯誤
解析:在 Python 語言中,使用一對單引號或者雙引號,包裹起來的變量數據類型就是字符
串。不能使用一個單引號一個雙引號。
13.在 Python 中,1_food 是一個合法的變量名。
答案:錯誤
解析:在 Python 中,變量名:
1、只能是:數字,字母組成,不可以是空格或特殊字符,如:(#?。,¥$*~!&)等
2、不能以數字開頭
3、不能使用保留字,如 and、for 等
14.4.0 和 4 在 Python 中是同一種數據類型。
答案:錯誤
解析:在 Python 中,4 是整型,4.0 是浮點型,不是同一種數據類型。
15.KMeans(n_clusters=3)中參數 3 的含義是將數據劃分為 3 類。
答案:正確
解析:在 KMeans 算法中, n_clusters 中 cluster 就是類、簇的意思,參數的含義就是將數
據分為幾類, 這里參數的含義就是將數據分為 3 類。
16.count() 函數可以用來統計指定元素在列表中出現的次數
答案:正確
解析:1、ount() 方法用于統計字符串里某個字符或子字符串出現的次數。
2、count() 方法用于統計某個元素在列表中出現的次數。
17.運行程序段
num = input()
print(num+3)
當輸入數字 10,輸出結果為 13。
答案:錯誤
解析:當輸入 10,input 函數會返回字符串'10'字符串和整型不能直接相加,程序報錯
18.正則表達式的字符 \d 與 \D 表示相同的含義
答案:錯誤
解析:在正在表達式中,\d 表示匹配數字,\D 表示匹配非數字。
19.在 Scratch中,不能編寫演奏音樂的程序。
答案:錯誤
解析:在 Scratch 中,可以通過添加拓展,選擇添加音樂模塊,從而編寫演奏音樂的程序。
20.以下代碼
def my_func4(l2):
l2 = l2 + [4]
l1 = [1, 2, 3]
my_func4(l1)
print(l1)
運行結果是
[1, 2, 3,4]
答案:錯誤
解析:這里 l2 = l2 + [4],表示創建了一個“末尾加入元素 4“的新列表,并讓 l2 指向這個
新的對象。這個過程與 l1 無關,因此 l1 的值不變
21.雞兔同籠問題中,總頭數 10,總腳數有可能是 44
答案:錯誤
解析:在全是兔子的情況下,總頭數 10,總腳數才 40,不可能超過 40NOC 圖形化 初賽考題
一、單選題
1.下面這段代碼運行結束后,角色的造型應該為?
cat-a
cat-b
cat-c
cat-d
答案:B
解析:程序運行后,角色的造型先設為了 cat-a,等待一秒后,造型切換為了 cat-b 。所以
最后角色的造型應該為 cat-b 。選項 B 正確。
2.下列選項中哪個語句和【將造型切換為】一樣可以實現切換角色的造型的效果呢?
A.
B.
C.
D.
答案:A
解析:A 選項,當【下一個造型】語句運行后,角色造型會切換為下一個造型,和【將造型
切換為】語句一樣實現了切換角色的造型的效果;
B 選項,當【將背景切換為】語句運行后,會將目前的背景切換為指定的背景,不是切換角
色的造型;
C 選項,當【下一個背景】語句運行后,會將目前的背景切換為下一個背景,不是切換角色
的造型;
D選項,當【將大小增加】語句運行后,是將角色目前的大小增加,不是切換角色的造型。
故此題答案為 A。
3.在 Scratch 中有一種指令,它可以實現兩個角色之間傳遞消息,A 角色完成動作后,B 角色
便知道 A 已完成,于是 B 角色開始動作,這個指令是()?
A.
B.
C.
D.
答案:B
解析:廣播指令是用于兩個角色之間傳遞消息。
4.下面哪個【編號】變量一定是按鈕角色的私有變量?
A.
B.
C.
D.
答案:D
解析:A 選項和 B 選項只能看出來它是變量,但不能確定是不是私有變量;
C 選項和 D 選項的區別是,D選項的編號前有按鈕這個角色名加冒號。根據私有變量的特點,
D選項可以確定是私有變量。
5.對下面這段代碼描述正確的是?
A:這段代碼模擬了觸碰放大的效果
B:角色的大小會一直設為 105
C:當綠旗被點擊后,這段代碼只會執行一次
D:角色的大小會一直設為 100
答案:A
解析:這段代碼模擬了觸碰放大的效果。當綠旗被點擊后,程序會不停地執行,判斷角色是
否碰到了鼓槌,如果碰到了,就將角色的大小設為 105 ,否則就將角色的大小設為 100 。
所以正確答案是 A 。
6.下面哪個語句可以刪除克隆體?
A:
B:
C:
D:
答案:D
解析:A 選項是控制克隆體的語句;
B 選項是克隆孫小弟這個角色;
C 選項是克隆角色自己;
D選項可以刪除克隆體;
根據題目要求,D 選項正確。
7.為角色編寫這段代碼,運行后,主體和克隆體的大小分別是多少呢?
A:主體大小為 100,克隆體大小為 100
B:主體大小為 100,克隆體大小為 150
C:主體大小為 150,克隆體大小為 100
D:主體大小為 150,克隆體大小為 150
答案:C
解析:點擊綠旗后主體的大小為 100,克隆自己,大小設置為 150,因此主體大小為 150。
克隆體生成時,主體大小為 100,因此克隆體大小為 100。C 選項正確。
想要讓一個角色在舞臺區中出現多個相同的自己,要用到什么知識呢?
A:廣播
B:變量
C:克隆
D:條件判斷
答案:C
解析:A 選項中,廣播指令是一個角色發出廣播,另一個角色接收廣播,并不能出現多個角
色;
B 選項中,變量可以記錄信息或數據,并不能出現多個角色;
D選項中,條件判斷可以讓角色進行判斷,條件是否成立,并不能出現多個角色;
C 選項可以生成相同的自己,因此 C 選項正確。
9.下面哪段代碼可以實現【按下左鍵】,角色就【向左旋 15 度】?
A:
B:
C:
D:
答案:B
解析:程序可以通過【按下左鍵】語句來偵測左鍵是否被按下,向左旋轉使用【向左旋轉度
數】語句。
10.想要讓角色一直不停地移動,應該用下面哪段代碼呢?
A:
B:
C:
D:
答案:B
解析:A 和 C 選項都只能讓角色移動一段距離哦;D 選項:這段分代碼 是讓角色不停地
旋轉,不是移動哦;我們需要讓程序【不停地】執行【向前運動】的代碼,使用【重復執行】
和【移動步數】語句,就可以讓角色不停地移動了,所以選項 B 正確。
11.執行完圖中程序后,舞臺上會出現( )個孫小弟。
A:0
B:1
C:2
D:3
答案:C
解析:孫小弟本體隱藏,蓋下第 1 個圖章,移動 100 步,蓋下第 2 個圖章,移動 100 步,蓋
下第 3 個圖章,移動 100 步;所以舞臺上會有 3 個孫小弟。
12.運行以下腳本后,角色坐標是
A:(-30,-70)
B:(-40,-80)
C:(-30,-90)
D:(-50,-70)
答案:C
解析:角色的初始坐標為(-50,-90),面向 90 方向,也就是面朝右邊,移動 10 步,重復
兩次,y 坐標沒變,還是-90,x 坐標-50+20=-30,所以答案選 C。
13.圖中腳本運行后形成的圖形是
A:五角星
B:三角形
C:正方形
D:五邊形
答案:C
解析:角色重復執行 4 次“移動 10 步右轉 90 度”后,繪制出正方形的四條邊,第 5 次“移動
10 步右轉 90 度”,和第一次繪制的邊重合。
14.在 Scratch中,下圖指出的方向是多少度?
A:90 度
B:180 度
C:0 度
D:-90 度
答案:D
解析:A:90 度時箭頭指向右;B:180 度時箭頭指向下; C:0 度時箭頭指向上;D:-90 度
時箭頭指向左
15.下圖中指令的作用是
A:修改角色的造型
B:修改角色的大小
C:修改角色的顏色
D:修改角色的顯示/隱藏狀態
答案:B
解析:可以在該指令中填入數字來改變角色的大小。
16.對這兩個程序說法不正確的是。
A:程序運行的總時間不同
B:播放聲音和移動兩個指令的執行順序不同
C:兩個程序播放音樂的時間不同
D:兩個程序中角色移動的長度相同
答案:C
解析:兩段程序主要區別是“播放聲音”指令不同,第一個是邊播放邊行走,第二個是等待聲
音播放完畢才執行后面的移動語句,所以程序執行的總時間就不同,但是角色移動的長度相
同,播放聲音和移動兩個指令的執行順序也就不相同,但是播放聲音的時間都是播放一次,
時間是相同的。
17.看,前方有一個蘋果,想一想,下面哪段程序能幫助 Giga 拿到它呢。
A:
B:
C:
D:
答案:D
解析:蘋果在 Giga 的右上方,要綜合考慮角色【面向的方向】和【數值的正負】,最后的
移動方向應該是向右和向上,因此只有選項 D 正確。
18.指令執行后,下面哪一條指令可以讓用戶向程序中輸入信息。
A:
B:
C:
D:
答案:A
解析:Scratch程序在執行時,可以通過【詢問 等待】指令可以向程序中輸入信息。
19.要使 Scratch中的角色在舞臺上繪圖,應選用下列哪一組指令?
A:清空并抬筆
B:落筆并移動 10 步
C:將畫筆顏色設定為 0
D:將畫筆粗細增加 1
答案:B
解析:使用 Scratch進行繪圖需要先將畫筆落筆后,進行移動。
20.Scratch 的背景中,沒有下列哪種類別的指令?
A:運動
B:外觀
C:聲音
D:畫筆
答案:A
解析:Scratch 的舞臺設與角色有很多區別。其中最大的區別就是舞臺不會動,雖然有運動
區的標簽,但是里面沒有指令。
21.運行下面這段程序后,舞臺區會出現多少個角色。
A:0
B:3
C:6
D:9
答案:D
解析:這段程序中,角色一共克隆了自己 9 次,本體是隱藏的,克隆體啟動時會顯示出來,
所以舞臺區一共有 9 個角色。
22.執行下列腳本,角色會運行哪一部分的代碼?
A:數字 1 代表的成功代碼
B:數字 2 代表的失敗代碼
C:都不運行
D:都運行一次
答案:A
解析:20*50 除以 3 的余數計算出來的結果是 1,而參數時間的值是 10,因為 10>1 所以判
斷條件成立,會執行成功這個部分的代碼,故這道題的正確答案是 A。
23.這段程序運行后,舞臺區的運行效果可能是()?
A:
B:
C:
D:
答案:A
解析:當程序運行后會克隆自己,但是每次克隆時本體的方向都是 90,所以所有克隆體都
只旋轉了 60 度,故這道題的正確答案是 A。
24.點擊綠旗,代碼開始運行,當用戶輸入 2 時,變量【數字】最后的數值是多少呢?
A:0
B:1
C:2
D:3
答案:C
解析:分析代碼可知,變量【數字】的初始值是 0,當用戶輸入的值是 2,滿足判斷條件,
會執行將變量【數字】+ 1 的指令,變量變為 1,繼續向下執行,再將變量增加 1,變量變為
2。
25.分析這段代碼,最后實現的效果圖是什么樣子的呢?
A:
B:
C:
D:
答案:D
解析:分析這段代碼,重點關注重復執行內的指令,畫筆從(0,0)位置開始,落筆后,先
移動 100 步,留下一條直線,接著抬筆,右轉 15 度,再回到(0,0)點,這段代碼沒有留
下痕跡,然后落筆,繼續移動一條直線,如此重復,每轉動 15 度,畫出一條直線,最后形
成的圖案就是選項 D。
26.點擊綠旗代碼開始執行后,幾秒角色會說“你好!”?
A:1
B:4
C:6
D:永遠不會說
答案:C
解析:分析這段代碼,點擊綠旗開始,先等待 1 秒,接著初始化變量【數字】=5,再等待【數
字】秒,由于變量【數字】中的值是 5,所以會等待 5 秒,然后說出“你好”,因此一共等待
了 1+5=6 秒。
27.運行結束后舞臺區和角色代碼如下圖所示,請問角色的旋轉中心是以下哪個選項?
A:
B:
C:
D:
答案:C
解析:從題目中的代碼知道,最終圖案是由單個橢圓形旋轉而成的,從最終圖案的構成分析,
整個圖形的中心就是橢圓的旋轉中心,與之最接近的選項就是 C。
28.運行下圖程序代碼,畫筆畫出的幾何圖形是( )?
A:正方形
B:三角形
C:圓形
D:十邊形
答案:C
解析:從落筆之后的代碼可以看出,重復執行 360 次,每次轉動 1 度,移動 1 步,完成后就
是 360 邊形,但是由于邊太小,整體看上去更接近一個圓形。
29.按下鍵盤空格鍵,執行完程序后,角色的大小為
A:80
B:100
C:130
D:150
答案:C
解析:角色的初始大小為 80,重復執行 10 次增加 10,80+10*10=180;重復執行 5 次增加-10,
180-5*10=130,答案選 C。
30.當角色執行下圖程序后,描述正確的一項是?
A:當前的時間(小時)如果小于 12,那么角色就換成下午的造型
B:當前的時間(小時)如果大于 12,那么角色就換成上午的造型
C:當前的時間(小時)如果等于 12,那么角色就換成下午的造型
D:以上都不正確
答案:C
解析:題目程序中的判斷為“如果當前的小時小于 12”,如果滿足該條件就換成上午造型,
否則換成下午造型,當時間等于 12 的時候,是不滿足“如果當前的小時小于 12”的條件的,
所以換成下午造型,C 正確。
31.當綠旗點擊后,角色的大小是多少?
A:110
B:100
C:90
D:120
答案:C
解析:大小的初始值是 20,首先判斷 4*6>3*7 嗎?滿足,將大小減少 10 目前大小為 90,
進入第二個判斷,40/8>6 嗎?不滿足,程序結束。所以角色的大小為 90,故這道題的正確
答案是 C。
32.點擊綠旗運行程序,輸入的數字是什么的時候,角色會說你好?
A:10
B:13
C:23
D:4
答案:C
解析:分析程序可以得知,角色說你好的條件是 回答>5,回答>20,所以這道題的正確答案
是 C。
33.下列選項中對該段代碼解釋正確的是?
A:9 以內的所有奇數的和
B:9 以內所有偶數的和
C:8 以內所有奇數的和
D:8 以內所有偶數的和
答案:C
解析:變量初始值為 9 。 重復執行 9 次,并且執行過程中先將變量 i 減少 1,所以判斷的
是 8 以內的所有符合條件的數值和。 條件為判斷數值除以 2 余數是否為 1,即判斷是否為
奇數。
34.運行下面這段腳本,運行結束后畫筆的粗細為?
A:1
B:50
C:30
D:29
答案:D
解析:正確答案是 29。開始運行后,先把變量【畫筆粗細】設置為 0,再把畫筆的粗細設
置為 1,接著重復執行將【畫筆粗細】的數值增加 1,直到【畫筆粗細】的數值大于 50,
重復執行的過程中會判斷,【畫筆粗細】是否小于 30,如果是的話,就將畫筆的粗細設置
為【畫筆粗細】的數值。所以程序中【畫筆粗細】在增大到 30 之前都會不斷地增大畫筆的
粗細,當【畫筆粗細】到達 30 的時候就不會再設置畫筆的粗細了,所以畫筆的粗細會停在
29,之后【畫筆粗細】會持續增大到 51,程序就會停止運行。所以最終畫筆的粗細為 29。
35.點擊綠旗,執行圖中代碼,最終得到的變量值是
A:1
B:11
C:10
D:0
答案:B
解析:“我的變量”初始值為 10,程序執行,先運行的判斷語句是判斷“我的變量”是否大于 9,
10 大于 9,將“我的變量”增加 1 變為 11;接著向下運行判斷“我的變量”是否等于 10,11 不
再等于 10,判斷條件內的語句不再執行,所以變量的最終值是 11。
36.下面的程序可以將輸入的字符串反轉,看看下面的分析,你覺得哪個是正確的呢?
A:字符串反轉就是把原來的字符串中字符的順序顛倒
B:變量【i】的初始值應該是 0
C:循環體中【連接】指令的前后兩個數據可以調換位置
D:重復執行的次數需要再加 1
答案:A
解析:變量【i】初始值如果為 0,第一次進入到循環體中,會操作第 0 個字符,是不存在的,
因此選項 B 錯誤,如果調換【連接】指令的前后兩個數據,就會導致字符串沒有反轉,選項
C 錯誤,重復執行的次數如果加 1,會超出字符串的長度,選項 D 也是錯誤的.
37.角色代碼如下,請問這段代碼中變量【m】的功能是什么呢?
A:循環檢測用戶回答中的每一個字是否為“愛”
B:統計用戶回答中“愛”字的個數
C:找到用戶回答中的“愛”字在第幾位
D:給“愛”字排名
答案:B
解析:分析這段代碼,首先將變量【m】、【i】初始化,接著詢問用戶輸入一句想對媽媽說
的話,然后開始重復執行,在重復執行過程中,變量【i】用于循環檢測用戶回答中的每一
個字符,并判斷哪個字符是“愛”字,如果找到一個“愛”字,就將變量【m】加 1,直到所有
字符檢測完,所以變量【m】的功能是統計用戶回答中“愛”字的個數。
38.關于該程序的功能,以下說法正確的是?
A:用來計算變量“一句話”的長度
B:用來去除“一句話”中所有的字母“t”
C:用來計算“一句話”中有多少個字母“t”
D:沒有實現任何功能
答案:C
解析:分析該程序,”一句話“變量是一段英文字符串,每一次先判斷變量“一句話”中第 n 個
字符的內容是否等于“t”,如果條件成立則變量 m+1,判斷結束后 n+1,以此循環”一句話的
字符數“次(若字符長度為 20,則循環 20 次)。可以得知 n 的作用是記錄“一句話”中每個
字符的位置,m 用來記錄字符串中“t”的個數,所以程序中的循環執行完后,根據”m“的值可
以得出有多少個字母”t“。
39.如圖用列表做了一個隨機抽簽程序,程序中的空缺處應該填寫的內容是?()
A:
B:
C:
D:以上都不正確
答案:C
解析:按下空格鍵后,需要用“獎項”變量來表示列表中的獎品等級序號,由于“獎項”列表有
5 項,所以第一個空缺處應該添填入 ,將隨機出的數字存儲;說出的中獎
結果中,第一個空缺處應該填入 而不能再填入隨機數,因為可能會跟第一次的隨機
數不同,影響結果;最后一個空缺處需要填寫隨機出的獎項名稱,通過指令
即可得出。三個空缺按順序填入,即為 C 選項。
40.運行如下所示的程序,變量“sum”的值是多少?()
A:45
B:50
C:55
D:60
答案:C
解析:自定義的積木中,程序先判斷參數“n”是否大于 0,如果符合條件則執行將變量“sum”
增加“n”,然后再調用自身進行判斷,同時參數“n”-1,調用 10 次后的“sum”的值就會變為
10+9+8+...+1=55,此時 n 變為 0,不再繼續調用。
41.在 Scratch 中,要將【積分】這個變量的值設置為 15,需要用到下面哪句代碼呢?
A:
B:
C:
D:
答案:A
解析「將積分設為 」表示將積分設置為多少,「將積分 增加」表示將積分增加多少。
選項 B 是將積分增加 15;選項 C 是將積分設置為 5;選項 D是將積分增加 5
42.下面的程序中,按下哪個按鍵可以讓角色恢復原來的大小?
A:按下 a 鍵時
B:按下 b 鍵時
C:按下 c 鍵時
D:以上皆是
答案:C
解析選項 A 是說出角色的大小 100 秒,并不會改變角色的尺寸;選項 B 是重復將角色大小
改變 100 次;選項 C 是把角色的大小設置為 100,是角色原來的大小,選項 C 正確。
二、多選題
1.在 scratch 中,可以創建角色的方法有哪些?()
A:從角色庫選擇一個
B:自己繪制一個
C:從角色庫隨機選擇一個
D:從外部文件導入角色
答案:ABCD
解析:這個四種方法都可以創建一個角色。
2.控制模塊包括以下哪些指令?()
A:停止所有聲音
B:等待秒數
C:如果那么
D:停止全部腳本
答案:BCD
解析:
屬于【聲音】模塊, 屬于【控制】
模塊。故此題的正確答案是 BCD。
3.小明添加了小貓角色后編寫了如下程序,對下面程序執行的效果說法正確的是?()

A:程序會一直重復執行下去
B:程序碰到舞臺邊緣后就不會再切換造型了
C:角色會一直移動到舞臺邊緣然后停下來
D:角色在移動過程中會切換造型
答案:BCD
解析:從程序可以分析,角色一直移動并切換造型,直到碰到了舞臺的邊緣就會停止,因此
選項 BCD 的說法都正確。
4.通過下面哪些方法可以讓“得分”變量顯示?()
A:
B:
C:
D:
答案:AD
解析:點擊變量前的小框可以改變變量的顯示及隱藏狀態,如果是勾選狀態的情況,則變量
顯示,反之隱藏。C 選項是用來讓角色顯示的。
5.這段代碼是王老師編寫的,同學們在討論它究竟實現了什么功能,根據你的分析,下面哪
個些說法是正確的?()
A:奇數列表中第一個加入的數據是 1
B:接收廣播的指令是對編號進行奇數和偶數的分類
C:代碼執行到一定程度就會自動停止
D:代碼會一直執行下去,不會停止
答案:ABD
解析:分析這段指令,編號從 0 開始,但是進入到重復執行中,編號先加 1,再發送廣播,
在接收廣播的代碼中,判斷編號 2 的余數是否等于 0,表示這里是判斷編號是奇數還是偶
數,所以選項 A、B 正確,由于代碼中使用的是重復執行指令,因此代碼會一直執行下去,
不會停止,選項 C 錯誤,選項 D 正確。
6.對下面的指令的使用說法正確的是?()
A:它必須在有克隆體時才可以執行
B:它只能控制克隆體,不能控制本體
C:該腳本寫在 A 角色中也可以控制 B 角色中的克隆體
D:它是在【事件】模塊中的
答案:AB
解析:【當作為克隆體啟動時】必須在有克隆體的時候才可以執行,并且它只能控制克隆體,
不能控制本體。選項 A、選項 B 正確;它所在的模塊是【控制】模塊,選項 D 錯誤;并且該
腳本寫在哪個角色中就只能控制該角色的克隆體程序,選項 C 錯誤。
7.“在 1 到 100 間隨機選一個數”可能出現的數字是?()
A:1
B:57
C:100
D:101
答案:ABC
解析:101 不在 1~100 的范圍內,所以不可能出現
8.要實現四則運算 50-3*(8+5),下面選項中,能夠算出正確結果的腳本是哪些?()
A:
B:
C:
D:
答案:BD
解析:Scratch中每個運算符自帶括號功能,如 A選項程序轉換成數學運算公式為:50-((3x8)+5),
C 選項為:((50-3)x8)+5,與題干中的運算結果不符
9.在控制模塊中,包含下面哪些循環類語句?()
A:重復執行
B:重復執行幾次
C:重復執行幾秒
D:重復執行直到
答案:ABD
解析:在控制模塊中,只有 ABD 三類循環語句。
10.角色的腳本區中,有如圖所示代碼,下列哪些描述是正確的?()
A:當程序開始運行之后,角色會在滑行的過程中變換顏色;
B:當程序開始運行之后,角色會先滑行到(20,20),再變換顏色;
C:程序一開始運行,角色就會播放勝利音效;
D:差不多在滑行結束時,角色就會開始播放勝利音效;
答案:AD
解析:正確答案為 AD,程序開始運行之后,角色會廣播【執行動作】的消息,當接受到消
息后,角色會開始滑行并且變換顏色,差不多 1 秒鐘之后,滑行和變換顏色都會執行結束,
角色會播放勝利音效,程序結束。
11.某個角色的腳本如下,下面選項中描述正確的是?()
A:腳本開始運行后,按下空格,再將鼠標移到角色上會切換背景。
B:腳本開始運行后,按下空格,再將鼠標移到角色上不會切換背景。
C:腳本開始運行后,將鼠標移到角色上會切換背景
D:腳本開始運行后,按下空格會切換背景
答案:BC
解析:先分析一下腳本運行的效果,當腳本開始運行后如果鼠標碰到角色,會切換造型,如
果按下空格會停止全部腳本,角色再碰到角色不會切換背景。故此題的正確答案是 BC。
12.某角色的代碼如下,請分析一下,運行程序后,說法正確的是?()
A:角色一直跟隨鼠標移動
B:按下鼠標時,角色靠近鼠標
C:按下鼠標時,角色遠離鼠標
D:畫筆粗細和顏色都是默認的
答案:CD
解析:代碼中沒有設定畫筆的顏色和粗細,因此就是系統默認的,選項 D 正確,代碼中按
下鼠標時,畫筆會面向鼠標指針,并移動-50 步,也就是向遠離鼠標的方向移動,因此選項
C 正確,選項 B 錯誤,代碼中沒有【移到鼠標指針】的指令,因此選項 A 錯誤。
13.點擊綠旗按鈕后,角色可能在下面哪些坐標位置呢?()
A:(0,0)
B:(50,0)
C:(100,0)
D:(150,0)
答案:BCD
解析:分析代碼可知,變量【位置】的初始值可能是 2,3,4,因此判斷條件第一個不可能滿
足,而其他三個條件都有可能滿足,因此選項 B、C、D 都可能存在。
14.根據如圖程序,下列哪些情況會造成角色的移動?()
A:按下空格并且按下 q鍵
B:按下 r 鍵
C:按下空格并且按下 r 鍵
D:不操作
答案:AC
解析:分析一下程序,按下空格同時按下 q 鍵和 r 鍵會移動角色,所以這道題的正確答案是
AC。
15.根據身份證號辨別性別的腳本如下,選項中為男生的是?()
A:110000201901151234
B:110000201902156378
C:110000201903153321
D:110000201904157642
答案:AB
解析根據程序的描述,身份證號中第十七個數字能被 2 整除則為女生,不能被 2 整除則為
男生。所以選項 A 和 B 正確。
16.關于私有變量,下面說法正確的是?()
A:建立私有變量需要選擇“僅適用于當前角色”
B:舞臺區中私有變量的名稱前面會有角色的名稱
C:不同角色的私有變量可以重名,但全局變量不可重名
D:私有變量不能修改變量值
答案:ABC
解析
選項 A,建立私有變量如圖所示, 選擇右側的“僅適用于當前角色”;選
項 B,私有變量在舞臺區中的顯示如圖所示, ,變量名稱前面
有角色名稱;選項 C,由于私有變量是角色的私有屬性,角色的名稱已經有區分,所以不同
角色的私有變量可以重名;選項 D,私有變量可以在所屬角色中隨意修改,所以說法錯誤,
正確答案 A,B,C。
17. 下列哪個選項可以將列表 A 中的數字從小到大排列重新存儲到列表 A
中?
A:
B:
C:
D:
答案:AB
解析:此題為冒泡排序。 相鄰的兩個數據相互比較,前邊的數如果比后邊的數大,交換兩
個數值的位置。索引 i 判斷當前位置,i 為列表中項目數時,當前列表中最后一項就是最大
的數字。將索引 i 重新從 1 開始計數,通過控制 i 的數值,完成冒泡排序。并且在交換兩
個相鄰的數值時記得叫用臨時變量 temp 存儲其中一個值
18.關于圖中這段腳本,下列說法正確的是?
A:程序開始運行之后,自制積木會運行 5 次;
B:如果填寫在自制積木中的參數不是 1 或者 2,自制積木就不會有效果;
C:程序運行結束后,角色會說出 3;
D:程序運行結束后,角色會說出 0;
答案:AC
解析:
三、判斷題
1.下面的語句能夠在【事件】模塊中找到
答案:正確
解析:【當空格鍵被按下】語句在事件模塊中
2.點擊這個圖標后,可以繪制一個新角色
答案:正確
解析:點擊這個圖標后,可以繪制一個新角色,所以正確
3.如果在程序中使用了選擇結構,就不能使用順序結構了。
答案:錯誤
解析:順序和選擇都是程序的基本結構,這程序的三種基本結構可以組合使用。故這道題錯
誤。
4.角色運行完下面這段代碼后的位置和初始位置相同。
答案:正確
解析:角色的 x 坐標增加 10 之后減少 10 ,位置回到了起點,沒有發生變化。
5.運行下面這段程序后,角色的狀態是顯示。
答案:錯誤
解析:這段代碼的意思是,程序運行后,角色顯示出來,然后移動 10 步,等待 1 秒后再
隱藏。所以角色最后是隱藏的狀態。
6.Scratch3.0 的作品保存后的擴展名是" .sh3"
答案:錯誤
解析:Scratch3.0 保存的程序擴展名是" .sb3"
7.在圖形化編程工具中,打開一個新文件就能在代碼選擇區中找到【畫筆】模塊。
答案:錯誤
解析:【畫筆】模塊在擴展模塊中,使用前需要單獨添加。
8.當圖形化程序運行時,想要關閉所有的聲音,需要使用【清除音效】指令。
答案:錯誤
解析:在圖形化編程中,【清除音效】語句是清除音調和左右平衡的音效,不是關閉所有的
聲音,應該使用【關閉所有聲音】語句,【關閉所有聲音】語句可以實現對程序中的所有聲
音停止播放的效果。故此題是錯誤的。
9.角色程序如圖所示,點擊綠旗,不論程序運行多長時間后,按下空格鍵,角色都會播放聲
音并移動到舞臺中央。
答案:錯誤
解析:觀察代碼,發現代碼中的重復執行只會執行 10 次,因此重復執行結束后再按空格鍵
角色不會有任何效果,因此題目說法錯誤。
10.角色有如下代碼,點擊綠旗開始,程序運行結束后,舞臺區會有 3 個該角色的克隆體存
在。
答案:錯誤
解析:從代碼分析可知,重復執行三次,每次克隆自己,但由于克隆體產生時,會立即將克
隆體刪除,所以舞臺區中沒有該角色的克隆體存在。
11.圖中的判斷條件,在空格鍵或者鼠標被按下的時候,角色就會說“你成功啦”。
答案:正確
解析:用【或】邏輯運算符連接判斷條件,需要【或】左右兩邊的條件成立一個的時候就會
成立,說“你成功啦”否則會說“你好”。
12.角色運行下面這兩段代碼后,會在改變一次造型和發出一次聲音之間交替進行。
答案:錯誤
解析:Scratch 中某個角色的兩個程序可以同時執行,這種規則叫做“并行”。該題目中,角色
在切換造型的同時就會發出聲音,并不是交替進行。
13.一個角色的坐標位置是 (100, 400),它可以顯示在舞臺區中。
答案:錯誤
解析:圖形化編程界面中,舞臺區上 x 坐標的范圍是 -240 到 240,y 坐標的范圍是 -180
到 180。(100, 400) 這個位置已經超出了舞臺區的范圍,角色不會顯示在舞臺區中。
14.在 Scratch中,可以創建兩個名字相同的列表,但不能創建兩個相同的變量。
答案:錯誤
解析:Scratch 中變量和列表的名字可以一致,但不能創建兩個名字相同的變量或名字相同
的列表。
15.在 Scratch中,列表和變量可以同名。如可以建立一個名為“數據”的變量,同時還可以
建立一個名為“數據”的列表。
答案:正確
解:Scratch 中變量和列表的名字可以一致,但不能創建兩個名字相同的變量或名字相同的
列表。
16. 該積木塊最終運行結果顯示為 4
答案:錯誤
解析:首先清空列表。加入了五個數據到列表中,此時列表存儲的為 156,155,153,170,
155. 身高中第一個 155 編號為 2,刪除身高的第二項即為刪除 156 后的 155,此時列表為
156,153,170,155,在第一項前插入 157,列表更新為 157,156,153,170,155。此時
第一個 155 編號為 5.題目 4 錯誤
17.圖中的幾何圖形是運行對應的腳本之后畫出來的。
答案:錯誤
解析:如圖腳本才能畫出正確的圖形,框出的地方需要重復執行 180 次才能畫出完整的圓。
18.運行如下所示程序,角色會前進 20 步。
答案:錯誤
解析由于“5>24“判斷結果為假,所以新建積木中的判斷會執行否則中的語句,角色會后退
20 步。
19.下面這段代碼,當 num1=40,num2=6 時,會畫出一個邊長為 40 的 6 邊形的一半。
答案:正確
解析:運行后得到的圖形是這樣的 ,由于重復執行的次數除以 2,只剩下一半,
因此只能畫出 6 邊形的 3 條邊,所以題目的說法正確。
20.某程序中的列表如圖所示 ,其中每一項都由不同的人名+成績組成。運行程序
后,可以讓角色將“成績單”列表中的所有成績都說一遍。
答案:正確
解析:從題目中可以看出 n代表列表的序號,每次執行的程序是說出列表中第 n項的值,再
將 n+1,重復次數與列表項目數一致,即為 26 次。由于 n 的初始值為 1,所以當程序執行
到第 26 次時,角色會說出列表第 26 項的值,再將 n+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. 主站蜘蛛池模板: 南乐县| 颍上县| 烟台市| 札达县| 调兵山市| 邮箱| 鸡西市| 迁安市| 临桂县| 新昌县| 中西区| 宜州市| 菏泽市| 舞阳县| 惠东县| 松江区| 卢湾区| 额济纳旗| 尚志市| 耿马| 武定县| 襄汾县| 佛山市| 高淳县| 炎陵县| 阳西县| 旬阳县| 农安县| 宜黄县| 华阴市| 格尔木市| 西乌珠穆沁旗| 沾化县| 睢宁县| 临海市| 平乡县| 威远县| 镇沅| 莲花县| 德阳市| 涞源县|