你可以在 APCS 官網:評量架構 裡面找到下面這段關於考試筆試題型的介紹
根據最近幾次考試的實際經驗,我們可以整理成下面的分類
下段程式碼為檢查一個 array 內的數字是否連續, 例如 {5, 3, 4, 2, 6} 完美覆蓋 2 ~ 6,而 {3, 5, 2, 6, 7} 缺 4
(A)
ok = 0,
return 1,
return 0
(B)
return 1,
ok = 0,
return 0
(C)
return 0,
ok = 0,
return 1
(D)
return 1,
return 0,
ok = 0
沒有正確輸出 a 的 p 次方,問哪裡錯
等地期望是
問輸出
問 i = i * 2 執行幾次
問 w, x, y, z 哪些相同
詢問輸出結果
詢問輸出結果
如果 !x1 && !x2 && !x3
為 True 且 x1 為 False, 問 x2 和 x3 應該為多少
(a) i 偶數輸出 4
(b) i 奇數輸出 11
(A) 兩個都對
(B) 兩個都錯
(C) 只對 (a)
(D) 只對 (b)
問輸出
求輸出結果
已知輸出結果為 "wadote putedo",求兩個 ??? 分別應該是什麼?
希望程式輸出入下,請填空程式碼
填空程式碼
詢問 ?? 分別要填入啥
A. j <= i
B. j < i
C. j >= i
D. j > i
詢問 func(n) 不可能會回傳什麼數值
(A) 15
(B) 16
(C) 17
(D) 18
問輸出
詢問輸出結果
詢問輸出結果
下列何者是對的
(A) a[2] = 'd'
(B) a[4] = 'm'
(C) a[6] = 't'
(D) a[8] = 'x'
問 ?? 填入哪些輸出是 "000111110"
A. i, i
B. i, 8 - i
C. 8 - i, i
D. 三個選項都對
已知輸出結果為 FIHVIU
,請問 s
應該是什麼?
問哪個選項會編譯錯誤?
(A) P.x = Q.y;
(B) B.name[5] = 'a';
(C) B[3].name = B[5].name
(D) Q.name[3] = '1';
問 傳進 func 的參數是什麼
A) 0
B) 1
C) 陣列的所有數字
D) 陣列的位址
求輸出結果
問輸出結果
詢問輸出結果
(1) n<=1, n
(2) n<0, n+1
(3) n==0, 0
答案是三個都可以
問 f(2, 5) 回傳多少
詢問回傳結果
詢問輸出結果
詢問輸出結果
求出 f(5) 與 f(99)
詢問輸出結果
求 f(8)
問 f(123) 輸出結果
詢問輸出結果
判斷一個字串是不是回文
問 ??? 要填入啥
A) isPal(s, i, len - 1)
B) isPal(s, i + 1, len - 1)
C) isPal(s, i + 1, len - 2)
D) isPal(s, i, len - 2)
問 ??? 填什麼 f 才會回傳 a, b 的最大公因數?
A. f(a, b%a)
B. f(a%b, a)
C. f(b, a%b)
D. f(a%b, b)
詢問輸出結果
詢問輸出結果
求 f(n) 的結果
填空
(A) j < i - 1, pas[j]
(B) j < i + 1, pas[j - 1];
(C) j < i - 1, pas[j - 1];
(D) j < i + 1, pas[j]
詢問輸出結果
迴圈版本費氏數列
問輸出結果
求 a 最後有幾項是 1
詢問輸出結果
給定 seed = 7
求輸出結果
求出最後 a 的內容
給 4 個陣列問交換次數最多的是哪一個
A) {1, 2, 3, 4, 5, 6, 7, 8}
B) {8, 7, 6, 1, 2, 4, 3, 5}
C) {7, 3, 1, 6, 4, 2, 5, 8}
D) {6, 3, 8, 7, 4, 1, 2, 5}
問一個陣列 {5, 3, 3, 2, 1} 交換幾次
由大到小排
(A)
a[i] < a[j]
t = a[i];
a[i] = a[j];
a[j] = t;
(B)
a[i] > a[j]
t = a[i];
a[i] = a[j];
a[j] = t;
(C)
a[i] < a[j]
t = a[i];
a[j] = a[i];
a[i] = t;
(D)
a[i] > a[j]
t = a[i];
a[j] = a[i];
a[i] = t;
問 func(3), func(15), func(4) int m = (i + j) / 2
執行了幾次
問下咧哪個 function call 會出錯輸出結果
A) 1
B) 2
C) 10
D) 66
最後的輸出是 5
問 mid + 1 應該要填入哪個 ____
兩種寫法哪種比較快
程式1
程式2
哪一個跑比較快
A) f()
B) g()
C) 一樣快
D) n 很小的時候 g 比較快, 反之 f 比較快
請問呼叫 F(100)
的輸出最接近下面哪個選項?
(A) 100000000
(B) 5000000
(C) 30000
(D) 10000
若輸入為 1 1 1 2 1 4 1 1 1 2 2 3 2 1
,輸出為何
(A) 4 1 2 0 0
已經給定一個 stack 的實做程式法,支援 empty
, push(x)
, pop()
, top()
找出不可能的輸出結果
有以下函數可以用
問 X 是什麼資料結構
A) 堆疊
B) 佇列
C) 雙向佇列
D) heap
給一個運算式 "3*5/6+2-1",求它的後序運算式