所屬科目:泉勝◆程式語言與設計(下冊)
1.右側程式碼執行後輸出結果為何?a=5;b=2c=a/b+a//b+a%bprint(c)(A)3(B)4(C)5.5(D)6.5
2.選出程式執行結果。x=True;y=True;z=Falseprint(not(y or z) or x)(A)True (B)False
3.選出程式執行結果。x=True;y=True;z=Falseprint(not y or (z or not x))(A)True (B)False
4.選出程式執行結果。x=True;y=True;z=Falseprint(z or (x and (y or z)))(A)True (B)False
5.選出程式執行結果。x=True;y=True;z=Falseprint((x or y) and z)(A)True (B)False
6.假設 x,y,z 為布林(boolean)變數,且 x=TRUE, y=TRUE, z=FALSE。請問下面各布林運算式的真假值依序為何?(TRUE 表真,FALSE 表假)x=True; y=True; z=Falseprint(not(y or z) or x)print(not y or (z or not x))print(z or (x and (y or z)))print((x or x) and z)(A) TRUE FALSE TRUE FALSE(B) FALSE FALSE TRUE FALSE(C) FALSE TRUE TRUE FALSE(D) TRUE TRUE FALSE TRUE
7.下列程式碼是自動計算找零程式的一部分,程式碼中三個主要變數分別為Total (購買總額),Paid (實際支付金額),Change (找零金額)。但是此程式片段有冗餘的程式碼,也就是移除該段程式碼之後不會影響程式的功能。請找出冗餘程式碼的區塊。(A) 冗餘程式碼在 A 區(B) 冗餘程式碼在 B 區(C) 冗餘程式碼在 C 區(D) 冗餘程式碼在 D 區
8.如果 Xn 代表 X 這個數字是 n 進位,請問 D02A16 + 548710等於多少?[105/10/22](A) 1100 0101 1001 10012 (B) 1626318(C) 5878716 (D) F59916
9.若 A[1]、A[2],和 A[3] 分別為陣列 A[] 的三個元素(element),下列那個程式片段可以將 A[1] 和 A[2] 的內容交換?[106/03/11](A) A[1] = A[2]; A[2] = A[1]; (B) A[3] = A[1]; A[1] = A[2]; A[2] = A[3]; (C) A[2] = A[1]; A[3] = A[2]; A[1] = A[3]; (D) 以上皆可
10.下列那個運算式可產生介於 100 和 1000 之間的任意數 ( 包含100 和 1000) ?(A) import randoma=random.randint(100,1000)(B) import randoma=random.randint(100,1001)(C) import randoma=random.randint(99,1000)(D) import randoma=random.randint(99,10001)
11.若print(not(a or b))結果為True,則a 與b的值分別為何?(A)False False(B)False Ture(C)True False(D)True True
12.若 a, b, c, d, e 均為整數變數,下列哪個算式計算結果與a+b*c-e 計算結果相同? [106/03/25](A)(((a+b)*c)-e) (B)((a+b)*(c-e))(C)((a+(b*c))-e) (D)(a+((b*c)-e))
13.寫出程式執行結果。(A)11(B)13(C)15(D)16
14.右側是依據分數 s 評定等第的程式碼片段正確的等第公式應為:90~100 判為 A 等80~89 判為 B 等70~79 判為 C 等60~69 判為 D 等0~59 判為 F 等這段程式碼在處理 0~100 的分數時,有幾個分數的等第是錯的?(A) 20(B) 11(C) 2(D) 10
15.請問右測程式輸出的和除以4的餘數是多少(A)0(B)1(C)2(D)3
16.右側程式正確的輸出應該如下:在不修改右側程式之第4 行及第 7 行程式碼的前提下,最少需修改幾行程式碼以得到正確輸出?(A) 1(B) 2(C) 3(D) 4
17.一個費式數列定義第一個數為 0 第二個數為 1 之後的每個數都等於前兩個數相加,如下所示:[105/03/08]0、1、1、2、3、5、8、1 3、21、34、55、89⋯。右列的程式用以計算第 N 個(N≥2) 費式數列的數值,請問 (a) 與 (b) 兩個空格的敘述(statement) 應該為何?(A) (a) f[i]=f[i-1]+f[i-2] (b) f[N](B) (a) a = a + b (b) a(C) (a) b = a + b (b) b(D) (a) f[i]=f[i-1]+f[i-2] (b) f[i]
18.右側程式碼,執行時的輸出為何?(A)0 2 4 6 8 10(B)0 1 2 3 4 5 6 7 8 9 10(C)0 1 3 5 7 9(D)0 1 3 5 7 9 11
19.右側 f() 函式執行後所回傳的值為何?(A)1023(B)1024(C)2047(D)2048
20.右側 f() 函式 (a), (b), (c) 處需分別填入哪些數字,方能使得f(4) 輸出 2468 的結果?(A) 1, 2, 1(B) 0, 1, 2(C) 0, 2, 1(D) 1, 1, 1
21. 若 n 為正整數,右側程式三個迴圈執行完畢後 a 值將為何?(A) n(n+1)/2 (B) n3/2 (C) n(n-1)/2 (D) n2(n+1)/2
22.給定右側函式 F(),F() 執行完所回傳的 x 值為何?(A)(B)n2(n+1)/2(C)(D)n(n+1)/2
23. 右側程式片段執行過程中的輸出為何?[105/10/12](A) 5 10 15 20(B) 5 11 17 23(C) 6 12 18 24(D) 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
24. 右側程式片段中執行後若要印出下列圖案,(a) 的條件判斷式該如何設定?****** **** ** (A) k > 2 (B) k > 1(C) k > 0 (D) 0
25. 請問右側程式,執行完後輸出為何?[105/10/23](A) 2417851639229258349412352 7(B) 68921 43(C) 65537 65539(D) 134217728 6
26.右側程式輸出幾個”Hi”(A)9(B)10(C)11(D)20
27.右側程式片段無法正確列印 20 次的"Hi!",請問下列哪一個修正方式仍無法正確列印 20 次的"Hi!"?(APCS114)for i in range(0, 101, 5): print('Hi!')(A) 將 range(0, 101, 5) 改為 range(0, 20, 1)(B) 將 range(0, 101, 5) 改為 range(5, 101, 5)(C) 將range(0, 101, 5) 改為 range(0, 100, 5)(D) 將range(0, 101, 5) 改為 range(5, 100, 5)
28.給定右側函式 F(),執行 F() 時哪一行程式碼可能永遠不會被執行到?(A) a = a + 5;(B) a = a + 2;(C) a = 5;(D) 每一行都執行得到
29.右側程式執行完畢後所輸出值為何?[106/03/18](A) 12 (B) 24 (C) 16 (D) 20
30.右側程式片段擬以輾轉除法求 i 與 j 的最大公因數。請問 while 迴圈內容何者正確?i = 76j = 48while (i % j) != 0: ____________ ____________ ____________print (j)(A)(B)(C)(D)
31. 給定右側程式,若已知輸出的結果為[1][2][3][5][4][6],程式中的 (?) 應為下列何者?(APCS 114)(A) j<i(B) j>i(C) j<=i(D) j>=i
32.大部分程式語言都是以列為主的方式儲存陣列。在一個 8x4 的陣列 (array) A 裡,若每個元素需要兩單位的記憶體大小,且若 A[0][0] 的記憶體位址為 108 ( 十進制表示 ),則 A[1][2]的記憶體位址為何?[105/03/19](A) 120 (B) 124 (C) 128 (D) 以上皆非
33.給定一整數陣列 a[0]、a[1]、⋯、a[99] 且 a[k]=3k+1,以value=100 呼叫以下兩函式,假設函式 f1 及 f2 之 while 迴圈主體分別執行 n1 與 n2 次 (i.e, 計算 if 敘述執行次數,不包含else if 敘述 ),請問 n1 與 n2 之值為何 ? 註:(low + high)/2 只取整數部分。[105/03/03](A) n1=33, n2=4(B) n1=33, n2=5(C) n1=34, n2=4(D) n1=34, n2=5
34. 給定右側程式片段,當程式執行完後,輸出結果為何?[APCS114](A) 9(B) 18(C) 27(D) 30
35.經過運算後,右側程式的輸出為何?[APCS114](A) 1275(B) 20(C) 1000(D) 810
36.右側程式碼執行後,輸出結果為何?[APCS114](A) 2 4 6 8 9 7 5 3 1 9(B) 1 3 5 7 9 2 4 6 8 9(C) 1 2 3 4 5 6 7 8 9 9(D) 2 4 6 8 5 1 3 7 9 9
37.請問右側程式輸出為何?[105/03/09](A) 1(B) 4(C) 3(D) 33
38.定義 a[n] 為一陣列 (array),陣列元素的指標為 0 至 n-1。若要將陣列中 a[0] 的元素移到 a[n-1],右側程式片段空白處該填入何運算式?[105/03/11](A) n+1(B) n(C) n-1(D) n-2
39. 右側程式片段主要功能為:輸入六個整數,檢測並印出最後一個數字是否為六個數字中最小的值。然而,這個程式是錯誤的。請問以下哪一組測試資料可以測試出程式有誤?(A) 11 12 13 14 15 3(B) 11 12 13 14 25 20(C) 23 15 18 20 11 12(D) 18 17 19 24 15 16
40.右側 F() 函式執行後,輸出為何?[105/10/01](A) 1 2 (B) 1 3 (C) 3 2 (D) 3 3
41.右側程式碼執行後輸出結果為何?[105/10/05](A) 2 4 6 8 9 7 5 3 1 9 (B) 1 3 5 7 9 2 4 6 8 9 (C) 1 2 3 4 5 6 7 8 9 9 (D) 2 4 6 8 5 1 3 7 9 9
42.下面哪組資料若依序存入陣列中,將無法直接使用二分搜尋法搜尋資料?[105/10/08] (A) a, e, i, o, u (B) 3, 1, 4, 5, 9 (C) 10000, 0, -10000 (D) 1, 10, 10, 10, 100
43.右側程式片段執行過程的輸出為何?[105/10/15](A) 44 (B) 52 (C) 54 (D) 63
44.給定一個 1x8 的陣列 A, A = {0, 2, 4, 6, 8, 10, 12, 14}。右側函式search(x) 真正目的是找到 A 之中大於 x 的最小值。然而,這個函式有誤。請問下列哪個函式呼叫可測出函式有誤?[106/03/01](A) Search(-1)(B) Search(0)(C) Search(10)(D) Search(16)
45.若 A 是一個可儲存 n 筆整數的陣列,且資料儲存於A[0]~A[n-1]。經過右側程式碼運算後,以下何者敘述不一定正確?[106/03/05](A) p 是 A 陣列資料中的最大值(B) q 是 A 陣列資料中的最小值(C) q < p(D) A[0] <= p
46.若 A[][] 是一個 MxN 的整數陣列,下面程式片段用以計算 A陣列每一列的總和,以下敘述何者正確?(A) 第一列總和是正確,但其他列總和不一定正確(B) 程式片段在執行時會產生錯誤 (run-time error)(C) 程式片段中有語法上的錯誤(D) 程式片段會完成執行並正確印出每一列的總和
47.右側 F() 函式執行時,若輸入依序為整數 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,請問 X[] 陣列的元素值依順序為何?[106/03/09](A) 0, 1, 2, 3, 4, 5, 6, 7, 8, 9(B) 2, 0, 2, 0, 2, 0, 2, 0, 2, 0(C) 9, 0, 1, 2, 3, 4, 5, 6, 7, 8(D) 8, 9, 0, 1, 2, 3, 4, 5, 6, 7
48.右側程式擬找出陣列 A[] 中的最大值和最小值。不過,這段程式碼有誤,請問 A[] 初始值如何設定就可以測出程式有誤?[106/03/19](A) {90, 80, 100}(B) {80, 90, 100}(C) {100, 90, 80}(D) {90, 100, 80}
49. 給定一陣列 a[10]={ 1, 3, 9, 2, 5,8, 4, 9, 6, 7 },i.e., a[0]=1,a[1]=3, ⋯,a[8]=6, a[9]=7,以 f(a, 10) 呼叫執行右側函式後,回傳值為何?[105/01/02](A) 1(B) 2(C) 7(D) 9
50.若以 f(22) 呼叫右側 f() 函式,總共會印出多少數字?[105/01/15](A) 16(B) 22(C) 11(D) 15