基礎觀念30 min read

Day 12:甄試模擬題練習(選擇題強攻)

8 大常考選擇題型的真實範例與詳解,涵蓋邏輯運算、迴圈、陣列、SQL、Big-O、二分搜尋等。

今天要開始拿真槍實彈的選擇題來練手感。甄試考的不是艱深的理論,而是「你有沒有見過這種問法」。這是 13 天轉職甄試衝刺大綱的 Day 12。

📅 前言:選擇題比的是「反射」,不是「思考」

甄試選擇題的重點是熟悉題目的「問法」和常見的陷阱設計。今天用幾個典型例題,示範每種常考題型長什麼樣子,之後找到題庫就能照這個節奏練習。

⏳ 常見題型範例(附解答與解說)

1. 邏輯運算判讀

isMember = true,amount = 400,執行 isMember && amount >= 500 的結果是?

A. true B. false C. 語法錯誤 D. undefined

答案:B。 amount >= 500 是 false(400 不夠 500),AND 只要有一邊是 false,結果就是 false。

2. 迴圈跑幾次

以下程式碼,console.log 總共會被執行幾次? for (let i = 0; i < 5; i++) { console.log(i); }

A. 4 次 B. 5 次 C. 6 次 D. 無限次

答案:B。 i 從 0 開始,跑到 i < 5 不成立為止(也就是 i = 0,1,2,3,4,共 5 次)。

3. 陣列索引

let arr = [10, 20, 30];,arr[3] 的值是?

A. 30 B. undefined C. 0 D. 報錯無法執行

答案:B。 陣列索引是 0、1、2,沒有索引 3,存取不存在的位置會得到 undefined(不是報錯)。

4. 函式回傳值

function add(a, b) { a + b; },console.log(add(2, 3)) 會印出什麼?

A. 5 B. undefined C. 23 D. 報錯

答案:B。 這個函式忘記寫 return,所以雖然有計算 a + b,但沒有把結果交出去,呼叫端拿到的是 undefined

5. SQL 查詢結果

SELECT name FROM users WHERE age >= 18; 這句話的意思是?

A. 刪除 18 歲以上的使用者 B. 撈出 18 歲以上使用者的姓名 C. 新增一筆 18 歲的使用者 D. 把使用者的年齡改成 18

答案:B。 SELECT 是讀取資料,不是新增/修改/刪除。

6. Stack / Queue 觀念

依序把 A、B、C 放進 Queue,第一個被取出的是?

A. C B. B C. A D. 無法判斷

答案:C。 Queue 是先進先出,最早放進去的 A 會最先被取出。

7. Big-O 判斷

兩層巢狀迴圈,每層都跑 n 次,複雜度是?

A. O(n) B. O(log n) C. O(n²) D. O(1)

答案:C。 巢狀迴圈疊兩層,通常對應到 O(n²)。

8. 二分搜尋步驟

用二分搜尋在排序好的 1~100 找答案,最多大約需要幾次才能找到?

A. 100 次 B. 50 次 C. 約 7 次 D. 1 次

答案:C。 每次砍半,100 → 50 → 25 → 13 → 7 → 4 → 2 → 1,大約 7 次左右就能收斂,這就是 O(log n) 的威力。

⏳ 建議配速

  • 每天練習 30~40 題(含檢討時間)。
  • 準備一本「錯題本」,把答錯或猶豫過的題目抄下來,寫上「為什麼會錯」。
  • 練到後期,重點應該放在「重複做錯的題型」,而不是一直做新題目。

🎯 目標

  • 熟悉 8 大類常考題型的問法與陷阱
  • 建立錯題本,開始累積自己的弱點清單