參考答案 / 中央 / 111 年 計算機概論

國立中央大學資訊管理學系

中央 111 年資管所 計算機概論 參考答案

共 12 題

參考答案 PDF各校參考答案的 PDF,訂閱考試資源分享信後會寄到您的信箱。訂閱領取 PDF

參考答案由作者與 AI 討論後逐題確認,不是各校公布的標準答案;若與各校公布不同,以各校為準。
最後更新:2026 年 11 月 3 日。發現錯誤歡迎來信。

這份考卷每一題的解析與手寫題的答題範例,收在《資管所考古題 111-115 計概資結全解》,可以免費試閱。

1BST 插入與刪除 Root

考點:BST 依序插入節點深度追蹤與 Inorder Traversal 列印複雜度、BST 基本性質:中序對應關係、比較次數計算與 Internal/External Node 定義

1 參考答案圖

2Linux 檔案權限與 chmod

考點:Linux 檔案權限與 chmod:rwx 三種身分、檔案型態判讀

(a) guest2。

(b) 一般檔案(regular file)。

(c) -rwxr-xr-x。

3死結偵測:資源分配狀態判斷

考點:Deadlock 處理策略總覽:Prevention/Avoidance/Detection/Recovery

(a) A、B、C、D 分別有 6、5、2、5 個實體。

(b) 存在死結,由 P2、P3、P5 造成。P1、P4 可完成並歸還資源,但 Work 的 C 恆為 0,P2、P3、P5 皆需 C≥1。

4循環二進位小數轉十進位

考點:十進位轉二進位(含小數部分):除 2 取餘與乘 2 取整法

1928≈0.678571。

5Equi-join、Natural Join 與 Outer Join 比較

考點:SQL JOIN 語法:INNER/LEFT/FULL OUTER/Self Join

  • Equi-join:明寫 ON A.x = B.y,只用 =,兩邊重複欄位各留一份,配不到的列捨棄。
  • Natural Join:自動以兩表所有同名欄位相等為條件,同名欄位合併為一份,配不到的列捨棄;是 Equi-join 的特例。
  • Outer Join:保留配不到的列(LEFT/RIGHT/FULL),不足處補 NULL,可與前兩者搭配。

6關聯模型的三種異常

考點:正規化(Normalization):1NF~3NF 與 BCNF

Anomaly:未正規化、存在資料重複的資料表在新增、修改、刪除時產生的非預期問題。

  1. Insertion anomaly:缺少主鍵值時無法存入其他實體的資料(如尚無學生的系所)。
  2. Deletion anomaly:刪除一筆記錄連帶失去其他實體的資訊(如最後一位學生退學,系所資料消失)。
  3. Update anomaly:重複的資料須同步修改多筆,漏改即不一致(如系主任換人)。

7資料庫分割的優缺點

考點:資料庫分區(Database Partitioning):水平/垂直分區與優缺點

優點:

  1. Partition pruning,只掃描相關分區,查詢較快。
  2. 備份、重建索引、刪除舊資料可逐分區進行。
  3. 分區可放不同磁碟或節點,支援平行 I/O 與平行查詢。
  4. 單一分區故障時,其餘分區仍可服務。

缺點:

  1. 跨分區查詢與 JOIN 複雜度與延遲上升。
  2. 分區鍵選不好造成資料傾斜,熱點成瓶頸。
  3. 跨分區交易需 2PC,一致性成本高。
  4. 全域唯一性約束與全域索引難維護。
  5. 分區規劃、再平衡與監控增加維運負擔。

8(a)TCP 與 UDP 特性比較

考點:TCP 與 UDP 差異

  • TCP:connection-oriented(3-way handshake);UDP:connectionless。
  • TCP 以序號、ACK、逾時重傳保證可靠且依序;UDP 不保證送達、不排序、不重傳。
  • TCP 有流量與壅塞控制;UDP 皆無。
  • TCP header 最小 20 bytes;UDP 固定 8 bytes。
  • TCP 為 byte stream;UDP 為 datagram,保留訊息邊界。

8(b)TCP 滑動視窗的目的與運作

考點:TCP 三向交握、流量控制與壅塞控制

目的:Flow Control,避免送方速率超過收方處理與緩衝能力,防止接收端 buffer 溢位。

原理:

  1. 收方在 ACK 的 window size 欄位(rwnd)回報接收緩衝區剩餘空間。
  2. 送方「已送未確認+可送未送」的總量不得超過 rwnd。
  3. 收到 ACK 後視窗左緣右移,釋出新的可送空間。

9SQL Injection 攻擊原理

考點:常見網路攻擊手段整理:Malware(Virus/Trojan/Worm)與其他攻擊手法

應用程式把使用者輸入直接以字串拼接組進 SQL 敘述,未過濾或跳脫,輸入中夾帶的 SQL 語法被資料庫當成程式碼執行。

例:帳號欄輸入 ' OR '1'='1' --,查詢變成

SELECT * FROM users WHERE name='' OR '1'='1' --' AND pwd='';

條件恆為真,-- 註解掉密碼比對,繞過登入驗證。

題號考點主題答案
10OOP 基本概念:封裝、繼承與 Class/Instance Variable 定義丁

11物件導向程式設計:時針與分針夾角

(a) 分針每分鐘轉 6°,時針每小時轉 30°、每分鐘再轉 0.5°;minuteAngle=m×6、hourAngle=(hmod12)×30+m×0.5;夾角取兩者差的絕對值,大於 180° 改取 360°− 差值。

(b) (如簡答圖)

(c)

class ClockTime {
    private int hour, minute;
    ClockTime(int h, int m) { hour = h; minute = m; }
    int getHour() { return hour; }
    int getMinute() { return minute; }
}
class ClockAngleCalculator {
    double computeAngle(ClockTime t) {
        double mA = t.getMinute() * 6.0;                          // 分針
        double hA = (t.getHour() % 12) * 30.0 + t.getMinute() * 0.5;  // 時針
        double d = Math.abs(hA - mA);
        return d > 180.0 ? 360.0 - d : d;                         // 取劣角
    }
}
public class Main {
    public static void main(String[] a) {
        String[] s = new java.util.Scanner(System.in).next().split(":");
        ClockTime t = new ClockTime(Integer.parseInt(s[0]), Integer.parseInt(s[1]));
        System.out.printf("%.3f%n", new ClockAngleCalculator().computeAngle(t));
    }
}
11 參考答案圖

中央其他年份