# APCS檢定應試指南
## APCS簡介
官方網站:https://apcs.csie.ntnu.edu.tw/index.php/info/
APCS為Advanced Placement Computer Science的英文縮寫,是指「大學程式設計先修檢測」。其檢測模式乃參考美國大學先修課程(Advanced Placement,AP),與各大學合作命題,並確定檢定用題目經過信效度考驗,以確保檢定結果之公信力。
## 檢測內容
1. 程式設計觀念題: 兩份測驗題本共計40個試題,分兩節次施測,各60分鐘
2. 程式設計實作題: 一份測驗題本共計4個題組,共150分鐘

## 評量架構
兩科目均採取自動評分與統計,評分過程不涉及主觀因素。
### 程式設計觀念題
程式設計觀念題為選擇題,分兩節次檢測,檢測分數為合併計分,滿分100分;
- 單選題 (含題組),以運算思維、問題解決與程式設計概念測試為主。
- 測驗題型,包括:
- 程式運行追蹤 (code tracing)
- 程式填空 (code completion)
- 程式除錯 (code debugging)
- 程式效能分析 (code performance analysis)
- 基礎觀念理解 (basic concepts understanding)
> 題目若需提供程式片段,則以 C 語言命題。
- 命題內容領域
- 程式設計基本觀念 (basic programming concepts)
- 資料型態 (data types)
- 常數 (constants)
- 變數 (variables)
- 視域 (scope):全域 (global) / 區域 (local)
- 控制結構 (control structures)
- 迴路結構 (loop structures)
- 函式 (functions)
- 遞迴 (recursion)
- 陣列與結構 (arrays and structures)
- 基礎資料結構 (basic data structures),包括:佇列 (queues) 和堆疊 (stacks)
- 基礎演算法 (basic algorithms),包括:排序 (sorting) 和搜尋 (searching)
### 程式設計實作題
程式設計實作題為單節次檢測,以撰寫完整程式或副程式計分,滿分400分
以撰寫完整程式或副程式為主。
>可自行選擇以 C, C++, Java, Python 撰寫程式。
- 命題內容領域
- 輸入與輸出 (input and output)
- 算術運算 (arithmetic operation),邏輯運算 (logical operation),位元運算 (bitwise operation)
- 條件判斷與迴路 (conditional expressions and loop)
- 陣列與結構 (arrays and structures)
- 字元 (character),字串 (string)
- 函數呼叫與遞迴 (function call and recursion)
- 基礎資料結構 (basic data structures),包括:佇列 (queues),堆疊 (stacks),樹狀圖 (tree),圖形 (graph)
- 基礎演算法 (basic algorithms),包括:排序 (sorting),搜尋 (searching),貪心法則 (greedy method), 動態規劃 (dynamic programming)
### 成績說明

## APCS準備方式
根據左方目錄,依序學習
1. 理解與熟記`電腦科學概論`知識
2. 從Python`入門程式基礎觀念與實作`能力
3. 掌握`C語言基礎觀念跟語法`
4. 了解`資料結構與演算法`,可使用Python實作
5. 反覆練習考古題與模擬試題
###### tags: `APCS檢定應試指南`