Trắc Nghiệm Tin Học 11 KHMT Kết Nối Tri Thức Chủ Đề 6 Bài 17: Dữ Liệu Mảng Một Chiều Và Hai Chiều là bộ câu hỏi thuộc môn Tin học, được biên soạn nhằm giúp học sinh lớp 11 hiểu rõ cấu trúc, cách khai báo, truy cập và xử lý dữ liệu mảng trong lập trình. Đây là đề ôn tập do Trường THPT Yên Hòa (Hà Nội) biên soạn năm 2024, dưới sự thực hiện của cô Vũ Thị Kim Ngân – giáo viên Tin học của trường. Bộ đề được thiết kế theo chuẩn trắc nghiệm Tin học 11 KHMT, bám sát nội dung SGK Kết nối tri thức và được tích hợp trên hệ thống detracnghiem.edu.vn, giúp học sinh luyện tập thuận tiện và hiệu quả.
Trắc nghiệm Tin học 11 ở chủ đề này tập trung vào các thao tác cơ bản với mảng 1 chiều và 2 chiều như duyệt mảng, tìm kiếm, sắp xếp, cập nhật dữ liệu cũng như vận dụng mảng để giải các bài toán thực tiễn. Bộ câu hỏi được kèm đáp án và giải thích chi tiết, giúp học sinh tự học dễ dàng, củng cố nền tảng lập trình và tăng khả năng phân tích dữ liệu. Đây là tài liệu hữu ích dành cho quá trình ôn tập và chuẩn bị kiểm tra của học sinh lớp 11. Trắc nghiệm ôn tập lớp 11
Trắc nghiệm Tin học 11 KHMT Kết nối tri thức
Chủ đề 6: Kỹ thuật lập trình
Bài 17: Dữ liệu mảng một chiều và hai chiều
Câu 1: Trong Python, cấu trúc dữ liệu nào thường được sử dụng để cài đặt mảng một chiều?
A. Dictionary (Từ điển).
B. List (Danh sách).
C. Tuple (Bộ).
D. Set (Tập hợp).
Câu 2: Để truy cập phần tử đầu tiên của danh sách A trong Python, ta sử dụng chỉ số nào?
A. A[1]
B. A[first]
C. A[0]
D. A[-1]
Câu 3: Cho danh sách A = [10, 20, 30, 40]. Giá trị của A[2] là bao nhiêu?
A. 20
B. 30
C. 40
D. Báo lỗi vì vượt quá chỉ số.
Câu 4: Để thêm phần tử x vào cuối danh sách A, ta dùng lệnh nào?
A. A.add(x)
B. A.insert(x)
C. A.push(x)
D. A.append(x)
Câu 5: Cho danh sách hai chiều (ma trận) A = [[1, 2, 3], [4, 5, 6]]. Cách truy cập vào số 6 là:
A. A[1, 2]
B. A[1][2]
C. A[2][3]
D. A[2][1]
Câu 6: Câu lệnh input().split() thường được dùng để làm gì khi nhập dữ liệu mảng?
A. Nhập một số nguyên duy nhất.
B. Nhập nhiều dòng văn bản.
C. Nhập một dòng gồm nhiều giá trị cách nhau bởi dấu cách và trả về một danh sách các xâu.
D. Chia danh sách thành hai nửa bằng nhau.
Câu 7: Cho đoạn mã sau:
A = [1, 2, 3]
del A[1]
Danh sách A sau đó sẽ là:
A. [1, 2, 3]
B. [1, 0, 3]
C. [1, 3]
D. [2, 3]
Câu 8: Để duyệt qua từng phần tử của danh sách A (mảng 1 chiều), cấu trúc vòng lặp nào sau đây là ĐÚNG?
A. for x in range(A):
B. for x in A:
C. while x in A:
D. if x in A:
Câu 9: Cho ma trận A kích thước m x n (m dòng, n cột). Câu lệnh len(A) trả về giá trị gì?
A. Số cột (n).
B. Tổng số phần tử (m * n).
C. Số dòng (m).
D. Số chiều của mảng (2).
Câu 10: Cho A = [[1, 2], [3, 4], [5, 6]]. Kết quả của len(A[0]) là gì?
A. 3
B. 2 (Số cột).
C. 1
D. 6
Câu 11: Đoạn mã sau thực hiện công việc gì?
s = 0
for i in range(len(A)): s += A[i]
A. Tìm phần tử lớn nhất của mảng A.
B. Sắp xếp mảng A.
C. Tính tổng các phần tử của mảng A.
D. In mảng A ra màn hình.
Câu 12: Để khởi tạo một mảng 2 chiều kích thước 3×3 gồm toàn số 0, cách viết nào sau đây là đúng và an toàn trong Python?
A. A = [0] * 3 * 3
B. A = [[0, 0, 0] for i in range(3)]
C. A = [[0] * 3] * 3
D. A = 0 for i in range(3) for j in range(3)
Câu 13: Trong ma trận vuông A cấp n, các phần tử nằm trên đường chéo chính có đặc điểm gì về chỉ số dòng (i) và chỉ số cột (j)?
A. i + j = n – 1
B. i < j
C. i == j
D. i > j
Câu 14: Đoạn mã sau in ra kết quả gì?
A = [[1, 2], [3, 4]]
print(A[1][0])
A. 1
B. 2
C. 3
D. 4
Câu 15: Muốn duyệt qua tất cả các phần tử của mảng 2 chiều A (m dòng, n cột), ta thường dùng cấu trúc nào?
A. Một vòng lặp for.
B. Hai vòng lặp for lồng nhau.
C. Ba vòng lặp for.
D. Không cần vòng lặp nào.
Câu 16: Cho A = [1, 2, 3, 4, 5]. Lệnh A.pop(1) sẽ làm gì?
A. Xóa số 1 khỏi danh sách.
B. Xóa phần tử tại chỉ số 1 (là số 2) và trả về giá trị đó.
C. Xóa phần tử cuối cùng.
D. Thêm số 1 vào cuối danh sách.
Câu 17: Lỗi “IndexError: list index out of range” xảy ra khi nào?
A. Khi danh sách chứa các phần tử không cùng kiểu dữ liệu.
B. Khi tên danh sách bị viết sai chính tả.
C. Khi truy cập vào một chỉ số không tồn tại trong danh sách.
D. Khi danh sách rỗng nhưng ta cố gắng dùng lệnh append.
Câu 18: Để nhập n số nguyên từ bàn phím vào một danh sách A trên cùng một dòng, câu lệnh gọn nhất là:
A. A = input().split()
B. A = [int(x) for x in input().split()]
C. A = int(input())
D. A = list(input())
Câu 19: Cho ma trận A. Đoạn mã sau làm gì?
for i in range(len(A)): print(A[i])
A. In toàn bộ ma trận trên một dòng duy nhất.
B. In mỗi hàng của ma trận trên một dòng riêng biệt.
C. In cột đầu tiên của ma trận.
D. Tính tổng các phần tử.
Câu 20: Trong ma trận vuông kích thước n x n, các phần tử thuộc đường chéo phụ thỏa mãn điều kiện gì về chỉ số i (dòng) và j (cột)?
A. i = j
B. i + j = n – 1
C. i + j = n
D. |i – j| = 1
Câu 21: Cho A = [1, 2, 3]. Lệnh A.insert(1, 100) sẽ biến đổi A thành:
A. [1, 100, 2, 3]
B. [1, 100, 2, 3] (Chèn 100 vào vị trí index 1, đẩy các số sau ra sau).
C. [100, 1, 2, 3]
D. [1, 2, 3, 100]
Câu 22: Đoạn mã sau thực hiện tính tổng của cái gì?
s = 0
for row in A: s += row[1]
A. Tổng các phần tử hàng thứ nhất (index 0).
B. Tổng các phần tử của toàn bộ ma trận.
C. Tổng các phần tử thuộc cột thứ hai (index 1) của ma trận.
D. Tổng các phần tử đường chéo chính.
Câu 23: Vận dụng cao: Tại sao cách khởi tạo A = [[0]*3]*3 là không nên dùng khi làm việc với ma trận trong Python?
A. Vì nó báo lỗi cú pháp.
B. Vì nó tạo ra ma trận kích thước 9×1.
C. Vì nó tạo ra 3 hàng tham chiếu đến cùng một đối tượng list trong bộ nhớ (sửa 1 hàng sẽ sửa tất cả).
D. Vì các phần tử không được khởi tạo bằng 0.
Câu 24: Vận dụng cao: Cho ma trận A. Để làm phẳng (flatten) ma trận này thành list 1 chiều, ta dùng list comprehension nào?
A. [x for x in A]
B. [val for sublist in A for val in sublist]
C. [sublist for val in sublist for sublist in A]
D. A.flatten() (lệnh này chỉ có trong thư viện NumPy, không phải list chuẩn).
Câu 25: Vận dụng cao: Đoạn mã sau dùng để kiểm tra tính chất gì của ma trận vuông A?
is_sym = True
for i in range(len(A)):
for j in range(i + 1, len(A)):
if A[i][j] != A[j][i]: is_sym = False
A. Kiểm tra ma trận đơn vị.
B. Kiểm tra ma trận tam giác trên.
C. Kiểm tra ma trận đối xứng qua đường chéo chính.
D. Kiểm tra ma trận có tổng các hàng bằng nhau.

