中六資訊及通訊科技練習卷:數據庫、SQL 與數據表示(12 題・100 分・75 分鐘)
- 2026-11-09
練習卷 · 中六資訊及通訊科技:數據庫、SQL 與數據表示全卷
中六資訊及通訊科技練習卷,涵蓋位圖與音頻檔案大小計算、壓縮率與傳輸時間、關係數據庫的主鍵與外鍵、SQL 查詢與聚合函數、數據正規化、IPv4 子網劃分、SQL 注入防禦與檢查數字;12 題、100 分、75 分鐘,附完整答案與評分要點。
卷面資料 年級:中六(S6) | 科目:資訊及通訊科技 | 時限:75 分鐘 | 總分:100 分 | 題數:12
甲部:數據表示與壓縮(34 分)
甲部
| # | 題目 | 答案與評分要點 |
|---|---|---|
| 1 | 1. 一個未壓縮位圖(bitmap)的尺寸為 4096 × 3072 像素,色深(colour depth)為 24 位元。(a) 求該圖片的檔案大小(以 MiB 表示,1 MiB = 2²⁰ 位元組);(b) 若把色深改為 8 位元,檔案大小變成多少 MiB?(8 分) | 1. (a) 位元組數 = 4096 × 3072 × 24/8 = 37,748,736 位元組;÷ 2²⁰ = 36.0 MiB。(b) 色深減為 8 位元,即為原來的 8/24 = 1/3,故 36.0/3 = 12.0 MiB。【評分:列式 2 分、答案 2 分;(b) 比例 2 分、答案 2 分】 |
| 2 | 2. 承接第 1 題的 24 位元未壓縮位圖(36.0 MiB),以 JPEG 格式儲存後檔案只有 2.4 MiB。(a) 求壓縮率(未壓縮大小 ÷ 壓縮後大小,以「n 比 1」表示);(b) 求節省的空間百分比(準確至一位小數);(c) 說明 JPEG 為何不適合儲存線條圖或文字截圖。(8 分) | 2. (a) 壓縮率 = 36.0 ÷ 2.4 = 15 比 1。(b) 節省 = (36.0 − 2.4) ÷ 36.0 × 100% = 93.3%。(c) JPEG 用離散餘弦變換並丟棄高頻資料,線條與文字的銳利邊緣會出現「蚊邊/塊狀」失真;線條圖應改用 PNG/GIF 等無損或索引色格式。【評分:(a) 2 分、(b) 2 分、(c) 4 分(失真 2 分、替代格式 2 分)】 |
| 3 | 3. 一段立體聲音頻以取樣率 44100 Hz、取樣解析度 16 位元、2 聲道錄音 180 秒。(a) 求未壓縮 WAV 檔的檔案大小(以 MiB 表示,準確至三位有效數字);(b) 若改以 128 kbps 的 MP3 儲存同一段錄音,檔案大小為多少 MiB?(c) 為何有損壓縮可大幅減少檔案大小但仍可接受?(9 分) | 3. (a) 位元組數 = 44100 × 16/8 × 2 × 180 = 31,752,000.0;÷ 2²⁰ = 30.3 MiB。(b) 128000 bit/s × 180 s ÷ 8 = 2,880,000.0 位元組 = 2.75 MiB。(c) 有損壓縮利用人耳遮蔽效應(masking)及心理聲學模型,丟棄人耳難以察覺的頻率成分,故檔案大幅縮小但聽感差異小。【評分:(a) 4 分、(b) 2 分、(c) 3 分】 |
| 4 | 4. 第 1 題的未壓縮位圖(36.0 MiB)需經網絡傳送。(a) 若網絡頻寬為 20 Mbps,求最短傳輸時間(秒,準確至三位有效數字);(b) 若同一檔案改由 8 Mbps 的上載頻寬傳送,需時多少秒?(c) 若實際只有 80% 頻寬可用於資料傳輸,重算 (a) 的傳輸時間。(9 分) | 4. (a) 位元數 = 37,748,736 × 8 = 301,989,888;÷ 20 000 000 = 15.1 s。(b) ÷ 8 000 000 = 37.7 s。(c) 有效頻寬 = 20 Mbps × 0.8 = 16 Mbps,時間 = 301,989,888 ÷ 16 000 000 = 18.9 s。【評分:(a) 3 分、(b) 3 分、(c) 3 分】 |
乙部:數據庫與 SQL(34 分)
乙部
| # | 題目 | 答案與評分要點 |
|---|---|---|
| 5 | 5. 某補習社以兩個關聯表儲存資料:STUDENT(StudentID, Name, Phone) 與 LESSON(LessonID, StudentID, Subject, Date, Fee)。(a) 指出每個表的主鍵(primary key);(b) 指出 LESSON 表的外鍵(foreign key)並說明它參照哪一個表;(c) 說明為何 Phone 不適合作為 STUDENT 表的主鍵(舉兩個理由)。(8 分) | 5. (a) STUDENT 的主鍵為 StudentID;LESSON 的主鍵為 LessonID。(b) LESSON.StudentID 是外鍵,參照 STUDENT.StudentID。(c) 電話號碼可能重複(家庭共用)、可能更改、可為空值;主鍵必須唯一、不變且不可為空,故應使用系統產生的 StudentID。【評分:(a) 2 分、(b) 3 分、(c) 3 分(每理由 1.5 分)】 |
| 6 | 6. 根據第 5 題的兩個表,寫出下列 SQL 語句:(a) 列出所有選修「化學」的學生姓名及上課日期;(b) 列出每位學生的 StudentID 及其已繳學費總額,只顯示總額大於 5000 的學生,並按總額由大到小排列。(8 分) | 6. (a) SELECT S.Name, L.Date FROM STUDENT S JOIN LESSON L ON S.StudentID = L.StudentID WHERE L.Subject = ‘化學’ ORDER BY L.Date;(b) SELECT StudentID, SUM(Fee) AS Total FROM LESSON GROUP BY StudentID HAVING SUM(Fee) > 5000 ORDER BY Total DESC;【評分:(a) SELECT/JOIN/WHERE 各 1 分;(b) GROUP BY 2 分、HAVING 2 分、ORDER BY 1 分】 |
| 7 | 7. 某班五名學生在同一次測驗的得分為 60、72、68、80、70。(a) 寫出一條 SQL 語句求該班平均分;(b) 求平均分(一位小數);(c) 寫出一條 SQL 語句數出得分 70 分或以上的人數,並寫出結果。(9 分) | 7. (a) SELECT AVG(Score) FROM RESULT;(b) 總分 = 350,平均 = 350 ÷ 5 = 70.0 分。(c) SELECT COUNT(*) FROM RESULT WHERE Score >= 70; 結果為 3 人。【評分:(a) 3 分、(b) 3 分、(c) SQL 2 分+答案 1 分】 |
| 8 | 8. 下列未正規化的紀錄儲存補習班上課資料:(StudentID, StudentName, Subject, TutorName, TutorRoom, Date, Fee)。其中每名學生每科只有一位導師,每位導師固定使用一個課室。(a) 指出一個部分相依(partial dependency)及一個傳遞相依(transitive dependency);(b) 把該紀錄拆成符合第三正規化(3NF)的表,列出每個表的主鍵與外鍵;(c) 說明正規化如何減少更新異常(update anomaly)。(9 分) | 8. (a) 部分相依:StudentName 只相依於 StudentID(複合鍵 StudentID+Subject 的一部分);TutorRoom 只相依於 TutorName。傳遞相依:TutorName → TutorRoom,即 TutorRoom 透過 TutorName 相依於鍵。(b) STUDENT(StudentID, StudentName) 主鍵 StudentID;TUTOR(TutorName, TutorRoom) 主鍵 TutorName;ENROL(StudentID, Subject, TutorName, Date, Fee) 主鍵 (StudentID, Subject, Date),外鍵 StudentID 參照 STUDENT、TutorName 參照 TUTOR。(c) 每個事實只存一次,改名或換課室只需改一行,避免同一資料在多行出現不同版本(插入/刪除/更新異常)。【評分:(a) 3 分、(b) 4 分、(c) 2 分】 |
丙部:網絡、保安與數據驗證(32 分)
丙部
| # | 題目 | 答案與評分要點 |
|---|---|---|
| 9 | 9. 一個網絡使用 IPv4 位址 192.168.20.0,子網遮罩(subnet mask)為 255.255.255.192。(a) 寫出 CIDR 表示法;(b) 求每個子網的位址數目及可用主機數目;(c) 寫出第一個子網的網絡位址與廣播位址;(d) 說明為何要劃分子網。(8 分) | 9. (a) /26,即 192.168.20.0/26。(b) 主機位元 = 32 − 26 = 6,每個子網 2^6 = 64 個位址,可用 62 個。(c) 網絡位址 192.168.20.0,廣播位址 192.168.20.63。(d) 減少廣播領域(broadcast domain)、提升保安與管理、按部門分配並善用位址空間。【評分:(a) 2 分、(b) 2 分、(c) 2 分、(d) 2 分】 |
| 10 | 10. 某網站用下列程式碼處理登入:sql = “SELECT * FROM USER WHERE Name = ‘” + name + “‘ AND Pwd = ‘” + pwd + “‘”。(a) 說明攻擊者輸入 name 為 “admin’ –” 時會發生甚麼事;(b) 指出這種漏洞的名稱;(c) 提出兩種具體防禦方法,並說明 HTTPS 在此情境中保護甚麼、不保護甚麼。(8 分) | 10. (a) 條件變成 Name = ‘admin’ –‘ AND Pwd = ‘…’,– 之後被視為註解,密碼檢查被刪去,攻擊者無需密碼即以 admin 身份登入。(b) SQL 注入(SQL injection)。(c) 使用參數化查詢/預備語句(prepared statement)把輸入當作資料而非程式碼;輸入驗證與白名單、最小權限帳戶、錯誤訊息不外露。HTTPS 只加密傳輸中的資料(防止竊聽與中間人攻擊),不能阻止伺服器端執行的 SQL 注入。【評分:(a) 3 分、(b) 1 分、(c) 4 分(每方法 1.5 分+HTTPS 說明 1 分)】 |
| 11 | 11. 某編號系統用 10 個數字 d₁d₂…d₉ 加一個檢查數字(check digit)d₁₀,計算方法為 S = Σ dᵢ × (11 − i)(i = 1 至 9),d₁₀ = (11 − S mod 11) mod 11(10 以 X 表示)。(a) 就 d₁…d₉ = 0, 3, 0, 6, 4, 0, 6, 1, 5,求 S 及檢查數字;(b) 說明檢查數字能偵測哪一類錯誤、不能偵測哪一類錯誤。(8 分) | 11. (a) S = 0×10 + 3×9 + 0×8 + 6×7 + 4×6 + 0×5 + 6×4 + 1×3 + 5×2 = 130;S mod 11 = 9,d₁₀ = 11 − 9 = 2,完整編號為 0306406152。(b) 可偵測單一數字錯誤及大部分相鄰數字對調(因權重不同);不能偵測兩個數字同時出錯而權重和互相抵消的情況,亦不能還原正確數字。【評分:(a) 4 分(列式 2 分、答案 2 分)、(b) 4 分】 |
| 12 | 12. (a) 把二進位 11011011 轉為十進位及十六進位;(b) 英文字母 A 的 ASCII 碼為 65,寫出它的二進位(8 位元)及十六進位表示;(c) 若採用偶同位(even parity),為 7 位元資料 1011001 加上同位位元,並解釋接收方如何偵測單一位元錯誤。(8 分) | 12. (a) 11011011₂ = 128+64+16+8+2+1 = 219,十六進位為 DB。(b) 65 = 01000001₂ = 41₁₆。(c) 資料 1011001 已有四個 1(偶數),故同位位元為 0,傳送 01011001;接收方計算 1 的數目,若為奇數即表示傳輸中有一個位元出錯(只能偵測,不能更正)。【評分:(a) 3 分、(b) 2 分、(c) 3 分】 |
TutorZone 練習卷|題目與文章為原創,並非任何學校或出版社的教材。


