Đề thi cuối kì 2 Tin học 11 KHMT kết nối tri thức - Mẫu 7991 (Đề số 10)
Đề 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: Khi phân tích thời gian chạy của một thuật toán xử lí mảng dữ liệu, đại lượng
thường được dùng để chỉ yếu tố nào?
A. Giá trị của phần tử lớn nhất trong mảng.
B. Kích thước (số lượng phần tử) của dữ liệu đầu vào.
C. Số lượng biến được khai báo trong chương trình.
D. Dung lượng bộ nhớ RAM mà mảng chiếm dụng.
Câu 2: Lệnh nào trong một đoạn mã được gọi là "phép toán tích cực"?
A. Lệnh khai báo thư viện ở đầu chương trình.
B. Lệnh in kết quả ra màn hình ở cuối chương trình.
C. Lệnh cơ sở nằm trong lõi vòng lặp, được thực hiện nhiều lần nhất và chi phối thời gian chạy.
D. Lệnh gán giá trị bằng 0 cho một biến đếm.
Câu 3: Đoạn chương trình sau có độ phức tạp thời gian thuật toán là bao nhiêu? (Giả sử
là một số nguyên rất lớn)

Độ phức tạp thời gian của đoạn mã trên là bao nhiêu?
A.
.
B.
.
C.
.
D.
.
Câu 4: Việc chia một bài toán lớn, phức tạp thành các bài toán con nhỏ hơn, dễ giải quyết hơn được gọi là kĩ thuật gì?
A. Phân rã (Làm mịn dần).
B. Lập trình hướng đối tượng.
C. Gộp mã lệnh (Nguyên khối).
D. Biên dịch mã nguồn.
Câu 5: Trong phương pháp thiết kế từ trên xuống (Top-down), lập trình viên sẽ bắt đầu công việc từ đâu?
A. Viết ngay các lệnh tính toán chi tiết nhất.
B. Xuất phát từ bài toán tổng quát ở mức đỉnh (trên cùng).
C. Tạo giao diện đồ họa cho phần mềm trước tiên.
D. Tìm kiếm và cài đặt các thư viện mã nguồn mở.
Câu 6: Lợi ích lớn nhất của việc thiết kế kiến trúc bằng phương pháp làm mịn dần (trước khi code chi tiết) là gì?
A. Tự động sửa lỗi sai cú pháp của ngôn ngữ lập trình.
B. Làm cho phần mềm không bao giờ bị nhiễm virus.
C. Giúp lập trình viên tập trung vào luồng xử lí và cấu trúc tổng thể, không bị sa đà vào tiểu tiết kĩ thuật.
D. Giảm dung lượng ổ cứng cần thiết để lưu trữ mã nguồn.
Câu 7: "Lập trình nguyên khối" có đặc điểm nào dưới đây?
A. Chia chương trình thành nhiều tệp .py riêng biệt, mỗi tệp xử lí một chức năng.
B. Gom toàn bộ mã lệnh, các biến và các hàm vào chung một tệp duy nhất.
C. Sử dụng mã hóa để bảo vệ tệp chương trình.
D. Không sử dụng bất kì biến toàn cục nào.
Câu 8: Mô đun (Module) trong ngôn ngữ Python thực chất là gì?
A. Là một vòng lặp không xác định.
B. Là một biến kiểu danh sách (List).
C. Là một tệp mã nguồn (đuôi .py) chứa các hàm và lớp đối tượng có thể được nạp vào chương trình khác.
D. Là phần mềm hệ điều hành của máy tính.
Câu 9: Để duy trì tính độc lập của các mô đun, cách tốt nhất để chúng trao đổi dữ liệu với nhau là gì?
A. Truyền dữ liệu qua tham số (parameters) và nhận kết quả trả về (return).
B. Khai báo chung hàng loạt biến toàn cục (global variables).
C. Ghi dữ liệu trực tiếp vào thanh RAM.
D. Đặt tên các biến trong các mô đun giống hệt nhau.
Câu 10: …………………………………………..
…………………………………………..
…………………………………………..
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 nhằm mục đích đếm số lượng các số chia hết cho 5 trong danh sách
(có kích thước
phần tử):

a) Kích thước dữ liệu đầu vào của bài toán trên là số lượng phần tử
của danh sách
.
b) Lệnh gán dem = 0 ở dòng đầu tiên là phép toán tích cực của thuật toán.
c) Lệnh kiểm tra điều kiện if A[i] % 5 == 0: sẽ được máy tính thực hiện đúng
lần.
d) Độ phức tạp thời gian của đoạn mã trên là
.
Câu 2: …………………………………………..
…………………………………………..
…………………………………………..
Câu 3: Thảo luận về kiến trúc phần mềm nguyên khối và mô đun hóa:
a) Lập trình nguyên khối thường gom tất cả mã lệnh vào chung một tệp duy nhất.
b) Thiết kế theo mô đun khiến việc làm việc nhóm trở nên bất khả thi vì mỗi người viết một tệp khác nhau.
c) Để các mô đun liên kết chặt chẽ, người lập trình nên ưu tiên sử dụng biến toàn cục (global variable) thay vì truyền tham số.
d) Nhờ tính độc lập, nếu có lỗi ở mô đun "Tính toán doanh thu", người lập trình có thể kiểm tra và sửa đổi chỉ trong mô đun đó mà không sợ hỏng luồng hoạt động của mô đun "Đăng nhập".
Câu 4: Về đặc điểm của cấu trúc Danh sách liên kết (DSLK):
a) Các phần tử của DSLK bắt buộc phải được lưu trữ sát cạnh nhau (liền kề) trong bộ nhớ RAM giống như cấu trúc Mảng.
b) Trong Python, lập trình viên hoàn toàn có thể tự tạo một tệp .py chứa định nghĩa lớp Node và dùng lệnh import để biến nó thành thư viện tái sử dụng.
c) Nút (Node) đứng cuối cùng của một DSLK đơn luôn có thuộc tính con trỏ next mang giá trị là None.
d) Thao tác chèn thêm một nút mới vào ngay đầu DSLK đơn đòi hỏi phải dịch chuyển toàn bộ các nút hiện có lùi về phía sau một vị trí.
B. PHẦN TỰ LUẬN (3,0 điểm)
Câu 1 (1,0 điểm): …………………………………………..
…………………………………………..
…………………………………………..
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 bán vé xem phim". Vận dụng tư duy thiết kế phần mềm theo mô đun, em hãy thiết kế (đặt tên hàm và mô tả ngắn gọn chức năng) cho ít nhất 3 mô đun (hàm) độc lập cần thiết để hệ thống này hoạt động được. (Lưu ý: Chỉ thiết kế kiến trúc chức năng, không yêu cầu viết code chi tiết).
Câu 3 (1,0 điểm): Viết hàm delete_last(L) có chức năng xoá phần tử cuối cùng của danh sách liên kết L.
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 | |||||