Đề thi cuối kì 2 Tin học 11 KHMT kết nối tri thức - Mẫu 7991 (Đề số 6)
Đề thi, đề kiểm tra Tin học 11 (Định hướng Khoa học máy tính) kết nối tri thức Cuối kì 2. Cấu trúc đề thi học kì 2 này được biên soạn theo CV 7991, bao gồm: trắc nghiệm nhiều phương án, TN đúng / sai, tự luận, HD chấm điểm, ma trận, đặc tả. Tài liệu tải về là file docx, thầy/cô có thể điều chỉnh được. Hi vọng đề thi này sẽ giúp ích được cho thầy cô.
=> Giáo án tin học 11 theo định hướng khoa học máy tính kết nối tri thức
| SỞ GD & ĐT ………………….. | Chữ kí GT1: ........................... |
| TRƯỜNG THPT………………. | Chữ kí GT2: ........................... |
ĐỀ KIỂM TRA HỌC KÌ 2
MÔN: TIN HỌC 11
ĐỊNH HƯỚNG KHOA HỌC MÁY TÍNH – KẾT NỐI TRI THỨC
NĂM HỌC: 2025 – 2026
Họ và tên: …………………………………… Lớp: ……………….. Số báo danh: …………………………….……Phòng KT:………….. | Mã phách |
Thời gian làm bài: 45 phút (Không kể thời gian phát đề)
✂
Điểm bằng số
| Điểm bằng chữ | Chữ ký của GK1 | Chữ ký của GK2 | Mã phách |
A. PHẦN TRẮC NGHIỆM (7,0 điểm)
PHẦN I: TRẮC NGHIỆM NHIỀU PHƯƠNG ÁN LỰA CHỌN (3,0 điểm)
Hãy khoanh tròn vào chữ in hoa trước câu trả lời đúng:
Câu 1: Kí hiệu nào sau đây biểu diễn một thuật toán có độ phức tạp thời gian tuyến tính (tỉ lệ thuận với kích thước dữ liệu đầu vào)?
A.
.
B.
.
C.
.
D.
.
Câu 2: Khi phân tích đoạn thuật toán có vòng lặp for i in range(n):, biến
thường đại diện cho yếu tố nào sau đây?
A. Giá trị lớn nhất trong thuật toán.
B. Kích thước (quy mô) dữ liệu đầu vào.
C. Kết quả tính toán cuối cùng.
D. Biến đếm số lần chạy sai của chương trình.
Câu 3: Một chương trình gồm 2 vòng lặp độc lập (chạy nối tiếp nhau, không lồng nhau):

Độ phức tạp thời gian của đoạn thuật toán này là bao nhiêu?
A.
.
B.
.
C.
.
D.
.
Câu 4: Thuật ngữ nào sau đây mang ý nghĩa tương đương với phương pháp thiết kế "làm mịn dần"?
A. Lập trình hướng đối tượng.
B. Thiết kế từ dưới lên (Bottom-up).
C. Thiết kế từ trên xuống (Top-down).
D. Lập trình nhúng.
Câu 5: Nguyên tắc cốt lõi của phương pháp làm mịn dần là gì?
A. Chuyển tất cả các tệp mã nguồn thành một tệp duy nhất.
B. Phân rã (chia nhỏ) một công việc phức tạp thành các công việc con đơn giản hơn.
C. Viết mã lệnh càng dài càng tốt để chống sao chép.
D. Bắt đầu lập trình từ những hàm nhỏ bé nhất rồi mới ghép lại.
Câu 6: …………………………………………..
…………………………………………..
…………………………………………..
Câu 9: Để các mô đun giữ được tính độc lập cao, hạn chế phụ thuộc vào nhau, ta nên ưu tiên truyền dữ liệu giữa chúng bằng cách nào?
A. Sử dụng chung các biến toàn cục (global variables).
B. Ghi dữ liệu ra một file text rồi để mô đun khác tự đọc.
C. Truyền qua danh sách tham số (parameters) của hàm và nhận kết quả trả về (return).
D. Gọi đan chéo các hàm vô hạn lần.
Câu 10: Câu lệnh nào sau đây dùng để nạp toàn bộ thư viện toán học vào chương trình Python?
A. import math
B. use math
C. load math
D. include math
Câu 11: Trong cấu trúc dữ liệu Danh sách liên kết đơn (Singly Linked List), mỗi phần tử độc lập được gọi chung bằng thuật ngữ gì?
A. Mảng (Array).
B. Tệp (File).
C. Nút (Node).
D. Lớp (Class).
Câu 12: Trong quá trình duyệt một danh sách liên kết đơn, dấu hiệu nào để máy tính nhận biết đó là phần tử (Nút) cuối cùng của danh sách?
A. Giá trị dữ liệu (Data) của nút đó bằng 0.
B. Thuộc tính con trỏ (next) của nút đó mang giá trị None.
C. Chương trình sẽ tự động báo lỗi cú pháp.
D. Nút đó không có tên biến.
PHẦN II. CÂU TRẮC NGHIỆM ĐÚNG SAI (4,0 điểm)
Trong mỗi câu, học sinh chọn Đúng hoặc Sai cho từng ý a, b, c, d.
Câu 1: Cho đoạn mã Python tính tổng các phần tử trong danh sách A (gồm
phần tử):

a) Lệnh gán khởi tạo s = 0 được xem là phép toán tích cực vì nó đứng đầu chương trình.
b) Kích thước dữ liệu đầu vào (
) của bài toán này chính là số phần tử của danh sách A.
c) Trong quá trình chạy, vòng lặp for sẽ thực hiện chính xác
lần lặp.
d) Thời gian thực thi của đoạn mã trên không bị phụ thuộc vào số lượng phần tử của danh sách A.
Câu 2: …………………………………………..
…………………………………………..
…………………………………………..
Câu 3: Khi thảo luận về kiến trúc mô đun trong lập trình:
a) Ngôn ngữ Python giới hạn một mô đun chỉ được phép chứa tối đa 10 hàm con.
b) Thiết kế chương trình theo mô đun giúp trưởng nhóm dễ dàng phân chia công việc cho nhiều thành viên cùng lập trình song song.
c) Để các mô đun liên kết chặt chẽ nhất, người lập trình nên khai báo tất cả các biến dưới dạng toàn cục (global) để mọi mô đun đều đọc được.
d) Nếu chức năng "In hóa đơn" bị lỗi, kĩ sư chỉ cần mở mô đun xử lí hóa đơn để sửa mà không sợ ảnh hưởng đến luồng mã lệnh của mô đun "Nhập thông tin khách hàng".
Câu 4: Về đặc điểm của cấu trúc lưu trữ dữ liệu:
a) Danh sách liên kết là một cấu trúc dữ liệu lưu trữ các phần tử ở các vị trí rải rác (không nhất thiết phải liền kề nhau) trong bộ nhớ máy tính.
b) Lập trình viên có thể tạo ra các file .py chứa danh sách liên kết và dùng lệnh import để biến nó thành một thư viện tự tạo.
c) Mảng (List) mặc định của Python có cơ chế quản lí bộ nhớ và móc nối con trỏ y hệt như Danh sách liên kết đơn.
d) Để chèn một phần tử (Nút) mới vào vị trí đầu tiên của danh sách liên kết đơn, máy tính bắt buộc phải dịch chuyển hàng loạt các nút khác lùi về sau.
B. PHẦN TỰ LUẬN (3,0 điểm)
Câu 1 (1,0 điểm): Cho đoạn mã Python sau dùng để đếm các số nhỏ hơn 0 trong một mảng số nguyên B (mảng có độ dài là
):

a) Chỉ ra phép toán tích cực trong đoạn mã trên.
b) Tính xem phép toán đó được thực hiện bao nhiêu lần. Từ đó, viết kí hiệu O-lớn biểu diễn độ phức tạp thời gian của thuật toán.
Câu 2 (1,0 điểm): Một nhóm học sinh đang thực hiện dự án xây dựng phần mềm "Hệ thống quản lí bệnh viện". Vận dụng tư duy thiết kế mô đun, em hãy đóng vai trò kiến trúc sư phần mềm, thiết kế và đặt tên cho ít nhất 3 mô đun (hàm) độc lập cần thiết cho hệ thống này, kèm theo mô tả ngắn gọn chức năng của từng mô đun. (Lưu ý: Không yêu cầu viết code chi tiết).
Câu 3 (1,0 điểm): …………………………………………..
…………………………………………..
…………………………………………..
BÀI LÀM
…………………………………………..
…………………………………………..
…………………………………………..
TRƯỜNG THPT ........
HƯỚNG DẪN CHẤM KIỂM TRA HỌC KÌ 2 (2025 – 2026)
MÔN: TIN HỌC 11 – ĐỊNH HƯỚNG KHOA HỌC MÁY TÍNH – KẾT NỐI TRI THỨC
…………………………………………..
…………………………………………..
…………………………………………..
TRƯỜNG THPT.........
MA TRẬN ĐỀ KIỂM TRA HỌC KÌ 2 (2025 – 2026)
MÔN: TIN HỌC 11 – ĐỊNH HƯỚNG KHOA HỌC MÁY TÍNH – KẾT NỐI TRI THỨC
| TT | Chủ đề | Nội dung/ Đơn vị kiến thức | Mức độ đánh giá | Tổng | Tỉ lệ % điểm | ||||||||||
| TNKQ | Tự luận | ||||||||||||||
| Nhiều lựa chọn | Đúng - Sai | ||||||||||||||
| Biết | Hiểu | Vận dụng | Biết | Hiểu | Vận dụng | Biết | Hiểu | Vận dụng | Biết | Hiểu | Vận dụng | ||||
| 1 | Chủ đề 6 | Đánh giá độ phức tạp thời gian thuật toán. Thực hành xác định độ phức tạp thời gian thuật toán | 2 | 1 | 2 | 2 | 1 | 1,0 | 0,75 | 1,0 | 27,5% | ||||
| 2 | Phương pháp làm mịn dần trong thiết kế chương trình. Thực hành thiết kế chương trình theo phương pháp làm mịn dần | 2 | 1 | 2 | 2 | 1,0 | 0,75 | 17,5% | |||||||
| 3 | Thiết kế chương trình theo mô đun. Thực hành thiết kế chương trình theo mô đun | 2 | 1 | 2 | 2 | 1 | 1,0 | 0,75 | 1,0 | 27,5% | |||||
| 4 | Thiết lập thư viện cho chương trình. Thực hành thiết lập thư viện chương trình | 2 | 1 | 2 | 2 | 1 | 1,0 | 0,75 | 1,0 | 27,5% | |||||
| Tổng số câu | 8 | 4 | 0 | 8 | 8 | 0 | 0 | 0 | 3 | 16 TN | 12 TN | 3 TL | 28 TN 3 TL | ||
| Tổng số điểm | 3,0 | 4,0 | 3,0 | 4,0 | 3,0 | 3,0 | 10 | ||||||||
| Tỉ lệ % | 30% | 40% | 30% | 40% | 30% | 30% | 100% | ||||||||
TRƯỜNG THPT.........
BẢNG ĐẶC TẢ ĐỀ KIỂM TRA HỌC KÌ 2 (2025 – 2026)
MÔN: TIN HỌC 11 – ĐỊNH HƯỚNG KHOA HỌC MÁY TÍNH – KẾT NỐI TRI THỨC
| TT | Chủ đề | Nội dung/ Đơn vị kiến thức | Yêu cầu cần đạt | Số câu hỏi ở các mức độ đánh giá | ||||||||
| TNKQ | Tự luận | |||||||||||
| Nhiều lựa chọn | Đúng - Sai | |||||||||||
| Biết | Hiểu | Vận dụng | Biết | Hiểu | Vận dụng | Biết | Hiểu | Vận dụng | ||||
| 1 | Chủ đề 6 | Đánh giá độ phức tạp thời gian thuật toán. Thực hành xác định độ phức tạp thời gian thuật toán | Biết: - Khái niệm phép toán tích cực; Nhận biết kí hiệu O-lớn. Hiểu: - Đánh giá được độ phức tạp của một vòng lặp đơn giản. - Phân tích đoạn mã vòng lặp lồng nhau, xác định phép toán tích cực và độ phức tạp. Vận dụng: - Cho một đoạn mã hoàn chỉnh, yêu cầu học sinh chỉ ra phép toán tích cực, đếm số lần lặp và biểu diễn bằng kí hiệu O-lớn. | C1 C2 | C3 | C1a C1b | C1c C1d | C1 | ||||
| 2 | Phương pháp làm mịn dần trong thiết kế chương trình. Thực hành thiết kế chương trình theo phương pháp làm mịn dần | Biết: - Nhận biết khái niệm thiết kế từ trên xuống (Top-down); Nguyên tắc của phương pháp làm mịn dần. Hiểu: - Nhận ra lợi ích của phương pháp này trong việc che giấu chi tiết. - Phân tích các bước tiến hành làm mịn dần cho một bài toán và nhận định tính đúng/sai của quy trình. | C4 C5 | C6 | C2a C2b | C2c C2d | ||||||
| 3 | Thiết kế chương trình theo mô đun. Thực hành thiết kế chương trình theo mô đun | Biết: - Nêu khái niệm mô đun trong lập trình; Lợi ích của thiết kế mô đun. Hiểu: - Xác định tính độc lập của các mô đun trong chương trình. - Đánh giá đặc tính, ưu điểm và cách tương tác giữa các mô đun. Vận dụng: - Áp dụng tư duy thiết kế mô đun phân rã một bài toán quản lí thực tế thành các hàm/mô đun hợp lí. | C7 C8 | C9 | C3a C3b | C3c C3d | C2 | |||||
| 4 | Thiết lập thư viện cho chương trình. Thực hành thiết lập thư viện chương trình | Biết: - Khái niệm thư viện tự tạo; Các thành phần của một Node trong danh sách liên kết. Hiểu: - Cú pháp sử dụng thư viện (import); Cách con trỏ hoạt động trong DS liên kết đơn. - Phân tích sự khác biệt giữa DS liên kết và danh sách (list) thông thường, nguyên lí của thư viện. Vận dụng: - Viết mã lệnh Python định nghĩa cấu trúc Nút (Node) của danh sách liên kết đơn. | C10 C11 | C12 | C4a C4b | C4c C4d | C3 | |||||