Trắc Nghiệm Tin Học 11 Cánh Diều Khoa Học Máy Tính Chủ đề FCS Bài 8 Có Đáp Án

Môn Học: Tin học 11
Trường: Trường THPT Nguyễn Công Trứ
Năm thi: 2024
Hình thức thi: Trắc nghiệm
Người ra đề thi: cô Trần Hoài An
Đối tượng thi: Học sinh lớp 11
Loại đề thi: Đề ôn tập
Trong bộ sách: Cánh Diều
Số lượng câu hỏi: 30
Thời gian thi: 45 phút
Độ khó: Trung bình
Làm bài thi

Trắc Nghiệm Tin Học 11 Cánh Diều Khoa Học Máy Tính Chủ đề FCS Bài 8: Lập trình một số thuật toán sắp xếp là nội dung thuộc môn Tin học, được biên soạn dưới dạng đề ôn tập tham khảo cho học sinh lớp 11 theo chương trình sách giáo khoa Cánh Diều. Bộ đề tập trung vào các thuật toán sắp xếp phổ biến như sắp xếp nổi bọt, chọn trực tiếp, chèn trực tiếp và so sánh hiệu suất giữa các thuật toán. Trong đoạn mở đầu có sử dụng định dạng trắc nghiệm Tin học 11 Khoa học máy tính Cánh Diều, tài liệu được biên soạn năm 2024 bởi cô Trần Hoài An – giáo viên Tin học Trường THPT Nguyễn Công Trứ (TP. Hồ Chí Minh), và được đăng tải trên detracnghiem.edu.vn nhằm hỗ trợ học sinh ôn luyện hiệu quả và đúng trọng tâm.

Trắc nghiệm môn Tin học 11 ở bài học này bao gồm hệ thống câu hỏi phân hoá theo mức độ, giúp học sinh hiểu sâu cách thức hoạt động của từng thuật toán, phân tích độ phức tạp, lựa chọn phương pháp sắp xếp phù hợp với từng bài toán và vận dụng để viết chương trình hoàn chỉnh. Khi luyện tập tại detracnghiem.edu.vn, học sinh có thể xem lời giải chi tiết, theo dõi tiến bộ và củng cố kỹ năng lập trình nền tảng. Bộ đề là tài liệu quan trọng giúp học sinh tự tin hơn trong các bài kiểm tra định kỳ Trắc nghiệm lớp 11.

Trắc Nghiệm Tin Học 11 Cánh Diều Khoa Học Máy Tính

Chủ đề FCS: Giải quyết vấn đề với sự trợ giúp của máy tính

Bài 8: Lập trình một số thuật toán

Câu 1: Trong ngôn ngữ lập trình Python, câu lệnh nào sau đây dùng để hoán đổi giá trị của hai biến a và b một cách ngắn gọn nhất?
A. a = b; b = a
B. temp = a; a = b
C. a, b = b, a
D. swap(a, b)

Câu 2: Thuật toán sắp xếp nào thực hiện việc so sánh các cặp phần tử liền kề và đổi chỗ nếu chúng sai thứ tự?
A. Sắp xếp chọn (Selection Sort).
B. Sắp xếp chèn (Insertion Sort).
C. Sắp xếp nổi bọt (Bubble Sort).
D. Sắp xếp nhanh (Quick Sort).

Câu 3: Hàm có sẵn nào trong Python dùng để sắp xếp một danh sách tại chỗ (thay đổi danh sách gốc)?
A. list.sort()
B. list.sorted()
C. order(list)
D. arrange(list)

Câu 4: Ý tưởng chính của thuật toán Sắp xếp chọn (Selection Sort) trong sắp xếp tăng dần là gì?
A. Đưa phần tử nhỏ nhất về cuối dãy.
B. Đổi chỗ hai phần tử liền kề nhau.
C. Chèn phần tử vào vị trí thích hợp.
D. Tìm phần tử nhỏ nhất đưa về đầu dãy.

Câu 5: Trong Selection Sort, vòng lặp tìm phần tử nhỏ nhất bắt đầu từ đâu?
A. for j in range(0, n):
B. for j in range(i, n):
C. for j in range(i + 1, n):
D. for j in range(0, i):

Câu 6: A = [5, 2, 9, 6]. Sau bước thứ nhất của Selection Sort tăng dần, dãy trở thành:
A. [2, 5, 6, 9]
B. [5, 2, 6, 9]
C. [2, 5, 9, 6]
D. [5, 2, 9, 6]

Câu 7: Trong Insertion Sort, phần tử A[i] được chèn vào đâu?
A. Cuối dãy
B. Vị trí đúng trong đoạn đã sắp xếp
C. Đầu dãy
D. Vị trí bất kỳ

Câu 8: Đoạn mã sau thuộc thuật toán nào?
for i in range(1, len(A)):
key = A[i]
j = i – 1
while j >= 0 and key < A[j]: …
A. Selection Sort
B. Bubble Sort
C. Insertion Sort
D. Quick Sort

Câu 9: Trong Bubble Sort tăng dần, sau mỗi lượt duyệt, phần tử nào về đúng vị trí?
A. Nhỏ nhất → đầu
B. Ở giữa → giữa
C. Lớn nhất → cuối
D. Không có phần tử nào

Câu 10: Để đổi Selection Sort tăng dần → giảm dần, ta thay đổi:
A. Đổi tên biến
B. Đổi dấu so sánh
C. Đổi chiều vòng lặp
D. Đổi vị trí lệnh swap

Câu 11: A = [4, 3, 2, 1], Bubble Sort (tăng dần) sau lượt đầu:
A. [1, 2, 3, 4]
B. [1, 4, 3, 2]
C. [1, 3, 2, 4]
D. [3, 2, 1, 4]

Câu 12: Trong Insertion Sort, vòng while kết thúc khi:
A. j = n
B. j < 0 hoặc gặp phần tử nhỏ hơn key
C. Gặp phần tử lớn nhất
D. Duyệt hết mảng

Câu 13: Số lần swap tốt nhất của Selection Sort là:
A. n lần
B. n² lần
C. 0 lần (nếu tối ưu) hoặc rất ít
D. Vẫn so sánh nhưng ít đổi chỗ

Câu 14: Lệnh A.sort(reverse=True) làm gì?
A. Sắp xếp tăng dần
B. Đảo ngược danh sách
C. Xóa danh sách
D. Sắp xếp giảm dần

Câu 15: Vòng lặp ngoài Bubble Sort chạy:
A. range(n)
B. range(n – 1)
C. range(1, n)
D. range(n + 1)

Câu 16: Insertion Sort với dãy đã sắp xếp:
A. O(n²)
B. O(n)
C. O(log n)
D. O(1)

Câu 17: Trong Selection Sort, swap(A, i, min_idx) được gọi ở:
A. Trong vòng for bên trong
B. Sau vòng for bên trong
C. Đầu vòng ngoài
D. Chỉ gọi 1 lần

Câu 18: if A[j] > A[j+1]: swap → thuật toán:
A. Bubble Sort
B. Selection Sort
C. Insertion Sort
D. Binary Search

Câu 19: A = [10, 5, 3], bước chèn đầu tiên (xét 5) trong Insertion Sort:
A. [3, 5, 10]
B. [5, 10, 3]
C. [5, 3, 10]
D. [10, 3, 5]

Câu 20: min_idx lưu gì trong Selection Sort?
A. Giá trị nhỏ nhất
B. Chỉ số của phần tử nhỏ nhất
C. Số lần swap
D. Độ dài dãy

Câu 21: sorted(A) khác A.sort() ở điểm nào?
A. sorted nhanh hơn
B. sorted thay đổi A
C. sorted lỗi nếu có số âm
D. sorted trả danh sách mới, A giữ nguyên

Câu 22: Trong Bubble Sort, nếu không có swap trong một vòng duyệt:
A. Thuật toán lỗi
B. Cần duyệt lại
C. Mảng đã sắp xếp
D. Mảng bị đảo ngược

Câu 23: Muốn sắp xếp danh sách xâu theo bảng chữ cái, cần viết lại thuật toán không?
A. Có, vì xâu không so sánh được
B. Không, vì vẫn so sánh được bằng
C. Phải chuyển sang ASCII
D. Python tự hiểu hoàn toàn

Câu 24: key trong Insertion Sort lấy từ đâu?
A. A[0]
B. A[j]
C. A[i – 1]
D. A[i]

Câu 25: Độ phức tạp trung bình của Selection, Insertion, Bubble:
A. O(n)
B. O(log n)
C. O(n²)
D. O(n log n)

Câu 26: Vì sao Selection Sort ít swap?
A. Không so sánh nhiều
B. Dùng nhiều bộ nhớ
C. Bỏ qua số âm
D. Chỉ swap 1 lần mỗi vòng lặp

Câu 27: Với danh sách nhỏ (n < 20), thuật toán nên dùng:
A. Merge Sort
B. Insertion Sort
C. Quick Sort
D. Heap Sort

Câu 28: Biến tối ưu Bubble Sort:
A. Biến đếm
B. Mảng phụ
C. Biến cờ (flag)
D. Con trỏ

Câu 29: Sắp xếp danh sách tuple theo điểm số:
A. DS.sort()
B. DS.sort(key = 1)
C. DS.sort(key = lambda x: x[1])
D. DS.sort(reverse = True)

Câu 30: Thuật toán ổn định trong ba thuật toán:
A. Selection Sort
B. Insertion Sort
C. Chọn và Nổi bọt
D. Không thuật toán nào

×

Bạn ơi!!! Để xem được kết quả
bạn vui lòng làm nhiệm vụ nhỏ xíu này nha

LƯU Ý: Không sử dụng VPN hoặc 1.1.1.1 khi làm nhiệm vụ

Bước 1: Mở tab mới, truy cập Google.com

Bước 2: Tìm kiếm từ khóa: Từ khóa

Bước 3: Trong kết quả tìm kiếm Google, hãy tìm website giống dưới hình:

(Nếu trang 1 không có hãy tìm ở trang 2, 3, 4... nhé )

Bước 4: Cuộn xuống cuối bài viết rồi bấm vào nút GIỐNG HÌNH DƯỚI và chờ 1 lát để lấy mã:

Bạn ơi!!! Để xem được kết quả
bạn vui lòng làm nhiệm vụ nhỏ xíu này nha

LƯU Ý: Không sử dụng VPN hoặc 1.1.1.1 khi làm nhiệm vụ

Bước 1: Click vào liên kết kế bên để đến trang review maps.google.com

Bước 2: Copy tên mà bạn sẽ đánh giá giống như hình dưới:

Bước 3: Đánh giá 5 sao và viết review: Từ khóa

Bước 4: Điền tên vừa đánh giá vào ô nhập tên rồi nhấn nút Xác nhận