Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

1. Phát biểu nào sau đây là đúng về sự khác biệt cơ bản giữa mảng một chiều và mảng hai chiều?

A. Mảng một chiều truy cập bằng một chỉ số, mảng hai chiều truy cập bằng hai chỉ số.
B. Mảng một chiều lưu trữ nhiều kiểu dữ liệu, mảng hai chiều chỉ lưu trữ một kiểu.
C. Mảng một chiều có kích thước cố định, mảng hai chiều có thể thay đổi kích thước.
D. Mảng một chiều dùng cho dữ liệu rời rạc, mảng hai chiều dùng cho dữ liệu liên tục.

2. Trong thuật toán sắp xếp nổi bọt (bubble sort), mục đích của mỗi lượt duyệt qua mảng là gì?

A. Đưa phần tử lớn nhất chưa được sắp xếp về đúng vị trí cuối cùng của đoạn chưa sắp xếp.
B. Tìm kiếm phần tử nhỏ nhất trong mảng.
C. Hoán đổi tất cả các phần tử trong mảng.
D. Kiểm tra xem mảng đã được sắp xếp chưa.

3. Phát biểu nào sau đây mô tả đúng về việc sử dụng mảng hai chiều để biểu diễn một ma trận?

A. Mỗi hàng của ma trận tương ứng với một chỉ số hàng của mảng hai chiều, và mỗi cột tương ứng với chỉ số cột.
B. Mỗi cột của ma trận tương ứng với một chỉ số hàng của mảng hai chiều.
C. Mỗi phần tử của ma trận được biểu diễn bằng một biến riêng biệt.
D. Chỉ số của mảng hai chiều luôn bắt đầu từ 1.

4. Khi duyệt một mảng hai chiều theo từng hàng trong Pascal, thứ tự truy cập các phần tử sẽ là gì?

A. Duyệt hết các cột của hàng hiện tại, rồi sang hàng tiếp theo.
B. Duyệt hết các hàng của cột hiện tại, rồi sang cột tiếp theo.
C. Truy cập ngẫu nhiên các phần tử.
D. Chỉ duyệt các phần tử trên đường chéo chính.

5. Trong lập trình C++, để khai báo một mảng hai chiều biểu diễn bàn cờ vua 8x8, câu lệnh nào là chính xác?

A. char board[8][8];
B. char board(8)(8);
C. char board[8*8];
D. char board[8, 8];

6. Cho đoạn chương trình Pascal sau: ```pascal var a: array[1..5] of integer; i, tong: integer; begin tong := 0; for i := 1 to 5 do readln(a[i]); for i := 1 to 5 do tong := tong + a[i]; writeln(tong); end. ``` Nếu người dùng nhập các số 1, 2, 3, 4, 5, kết quả in ra màn hình là bao nhiêu?

A. 15
B. 10
C. 5
D. 25

7. Cho mảng hai chiều `b` trong Pascal có kích thước 5x5. Để truy cập phần tử ở hàng thứ 3 và cột thứ 2, ta sử dụng ký hiệu nào?

A. b[3,2]
B. b(3,2)
C. b[2,3]
D. b(2,3)

8. Phát biểu nào sau đây là đúng về việc sử dụng biến chỉ số (index variable) trong khi làm việc với mảng?

A. Biến chỉ số được dùng để xác định vị trí của phần tử trong mảng.
B. Biến chỉ số phải luôn có kiểu dữ liệu giống mảng.
C. Biến chỉ số dùng để lưu trữ giá trị của phần tử mảng.
D. Biến chỉ số chỉ có thể là số nguyên dương.

9. Khi thực hiện thao tác cập nhật (update) một phần tử trong mảng, điều quan trọng nhất cần xác định là gì?

A. Chỉ số của phần tử cần cập nhật và giá trị mới.
B. Chỉ số của phần tử đầu tiên và phần tử cuối cùng.
C. Tổng số phần tử của mảng.
D. Kiểu dữ liệu của mảng.

10. Trong ngôn ngữ C++, để duyệt qua tất cả các phần tử của mảng một chiều `arr` có kích thước `n`, vòng lặp `for` nào sau đây là phù hợp nhất?

A. for (int i = 0; i < n; i++) { // truy cập arr[i] }
B. for (int i = 1; i <= n; i++) { // truy cập arr[i] }
C. for (int i = 0; i <= n; i++) { // truy cập arr[i] }
D. for (int i = 1; i < n; i++) { // truy cập arr[i] }

11. Nếu một mảng trong Pascal có các chỉ số là 10, 11, ..., 20, thì số lượng phần tử của mảng đó là bao nhiêu?

A. 11
B. 10
C. 20
D. 21

12. Trong lập trình Pascal, câu lệnh nào sau đây khai báo một mảng một chiều có tên là "diem", kiểu dữ liệu là số thực, với các chỉ số từ 10 đến 50?

A. var diem: array [10..50] of real;
B. var diem: array of real[10..50];
C. var diem: array [real] of 10..50;
D. var diem: real array [10..50];

13. Cho mảng hai chiều `mat` trong Pascal, có kích thước 4x4. Nếu ta muốn tính tổng các phần tử trên đường chéo chính, ta sẽ duyệt qua các chỉ số nào?

A. Khi chỉ số hàng bằng chỉ số cột (i=j).
B. Khi chỉ số hàng lớn hơn chỉ số cột (i>j).
C. Khi chỉ số hàng nhỏ hơn chỉ số cột (i
D. Khi chỉ số hàng cộng chỉ số cột bằng 5 (i+j=5).

14. Khi thực hiện thuật toán tìm kiếm tuyến tính (linear search) trong mảng một chiều, điều kiện dừng vòng lặp là gì?

A. Tìm thấy phần tử cần tìm hoặc đã duyệt hết mảng mà không tìm thấy.
B. Duyệt qua một nửa mảng.
C. Phần tử hiện tại lớn hơn phần tử cần tìm.
D. Chỉ tìm thấy phần tử cần tìm.

15. Khi sắp xếp mảng một chiều theo thứ tự tăng dần, ta cần thực hiện hành động nào?

A. So sánh từng cặp phần tử và đổi chỗ nếu chúng không theo đúng thứ tự.
B. Chỉ so sánh phần tử đầu tiên với các phần tử còn lại.
C. Gán giá trị của các phần tử vào một biến tạm thời.
D. Duyệt qua mảng và in ra các phần tử lớn nhất.

16. Trong Pascal, nếu muốn tìm giá trị nhỏ nhất trong mảng một chiều "arr" có `n` phần tử, ta thường khởi tạo biến `min_val` bằng giá trị nào sau đây?

A. Phần tử đầu tiên của mảng (arr[1]).
B. Một số âm rất nhỏ.
C. Một số dương rất lớn.
D. Số 0.

17. Cho đoạn chương trình Pascal sau: ```pascal var arr: array[1..5] of integer; i: integer; begin for i := 1 to 5 do arr[i] := i * 2; writeln(arr[3]); end. ``` Giá trị nào sẽ được in ra màn hình?

A. 6
B. 3
C. 5
D. 4

18. Cho mảng một chiều `arr` trong Pascal, nếu `arr` có 100 phần tử và được khai báo với chỉ số từ 1 đến 100, thì chỉ số của phần tử cuối cùng là bao nhiêu?

A. 100
B. 99
C. 1
D. 0

19. Phát biểu nào sau đây mô tả đúng về việc khởi tạo mảng hai chiều trong C++ với các giá trị cụ thể?

A. Sử dụng cặp dấu ngoặc nhọn lồng nhau, ví dụ: `int arr[2][3] = {{1, 2, 3}, {4, 5, 6}};`
B. Sử dụng dấu ngoặc đơn và dấu phẩy ngăn cách, ví dụ: `int arr(2, 3) = (1, 2, 3), (4, 5, 6);`
C. Cần khai báo từng phần tử một cách riêng lẻ.
D. Chỉ có thể khởi tạo với các giá trị mặc định.

20. Cho mảng hai chiều `scores` trong C++, có kích thước 3x3. Để tính tổng các phần tử nằm trên đường chéo phụ (từ trên phải xuống dưới trái), ta cần duyệt các phần tử có điều kiện nào?

A. Tổng chỉ số hàng và chỉ số cột bằng kích thước mảng trừ 1 (ví dụ: i + j = 2 cho mảng 3x3).
B. Chỉ số hàng bằng chỉ số cột (i = j).
C. Chỉ số hàng lớn hơn chỉ số cột (i > j).
D. Chỉ số hàng nhỏ hơn chỉ số cột (i < j).

21. Phân tích đoạn mã C++ sau: ```cpp int data[3][2] = {{1, 2}, {3, 4}, {5, 6}}; cout << data[1][0]; ``` Giá trị nào sẽ được in ra màn hình?

A. 3
B. 1
C. 4
D. 5

22. Đoạn mã C++ sau thực hiện chức năng gì? ```cpp int arr[5] = {10, 20, 30, 40, 50}; int temp = arr[1]; arr[1] = arr[3]; arr[3] = temp; ```

A. Hoán đổi vị trí của phần tử thứ 2 (chỉ số 1) và phần tử thứ 4 (chỉ số 3) trong mảng.
B. Gán giá trị của phần tử thứ 4 cho phần tử thứ 2.
C. Xóa phần tử thứ 2 và thứ 4.
D. Tính tổng các phần tử từ chỉ số 1 đến 3.

23. Phát biểu nào sau đây mô tả chính xác nhất mục đích của việc sử dụng mảng trong lập trình?

A. Để lưu trữ một tập hợp các biến có cùng kiểu dữ liệu và truy cập chúng bằng một tên chung với chỉ số.
B. Để tạo ra các hàm xử lý dữ liệu phức tạp.
C. Để định nghĩa các kiểu dữ liệu mới.
D. Để quản lý bộ nhớ một cách tự động.

24. Khi làm việc với mảng hai chiều trong ngôn ngữ lập trình C++, câu lệnh nào sau đây khai báo một ma trận có 3 hàng và 4 cột, với các phần tử là số nguyên?

A. int matrix[3][4];
B. int matrix[4][3];
C. int matrix(3, 4);
D. int matrix[3x4];

25. Trong Pascal, để tìm giá trị lớn nhất trong mảng một chiều "arr" có `n` phần tử, ta thường khởi tạo biến `max_val` bằng giá trị nào sau đây?

A. Phần tử đầu tiên của mảng (arr[1]).
B. Số 0.
C. Một số âm rất nhỏ.
D. Một số dương rất lớn.

1 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

1. Phát biểu nào sau đây là đúng về sự khác biệt cơ bản giữa mảng một chiều và mảng hai chiều?

2 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

2. Trong thuật toán sắp xếp nổi bọt (bubble sort), mục đích của mỗi lượt duyệt qua mảng là gì?

3 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

3. Phát biểu nào sau đây mô tả đúng về việc sử dụng mảng hai chiều để biểu diễn một ma trận?

4 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

4. Khi duyệt một mảng hai chiều theo từng hàng trong Pascal, thứ tự truy cập các phần tử sẽ là gì?

5 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

5. Trong lập trình C++, để khai báo một mảng hai chiều biểu diễn bàn cờ vua 8x8, câu lệnh nào là chính xác?

6 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

6. Cho đoạn chương trình Pascal sau: ```pascal var a: array[1..5] of integer; i, tong: integer; begin tong := 0; for i := 1 to 5 do readln(a[i]); for i := 1 to 5 do tong := tong + a[i]; writeln(tong); end. ``` Nếu người dùng nhập các số 1, 2, 3, 4, 5, kết quả in ra màn hình là bao nhiêu?

7 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

7. Cho mảng hai chiều `b` trong Pascal có kích thước 5x5. Để truy cập phần tử ở hàng thứ 3 và cột thứ 2, ta sử dụng ký hiệu nào?

8 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

8. Phát biểu nào sau đây là đúng về việc sử dụng biến chỉ số (index variable) trong khi làm việc với mảng?

9 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

9. Khi thực hiện thao tác cập nhật (update) một phần tử trong mảng, điều quan trọng nhất cần xác định là gì?

10 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

10. Trong ngôn ngữ C++, để duyệt qua tất cả các phần tử của mảng một chiều `arr` có kích thước `n`, vòng lặp `for` nào sau đây là phù hợp nhất?

11 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

11. Nếu một mảng trong Pascal có các chỉ số là 10, 11, ..., 20, thì số lượng phần tử của mảng đó là bao nhiêu?

12 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

12. Trong lập trình Pascal, câu lệnh nào sau đây khai báo một mảng một chiều có tên là diem, kiểu dữ liệu là số thực, với các chỉ số từ 10 đến 50?

13 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

13. Cho mảng hai chiều `mat` trong Pascal, có kích thước 4x4. Nếu ta muốn tính tổng các phần tử trên đường chéo chính, ta sẽ duyệt qua các chỉ số nào?

14 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

14. Khi thực hiện thuật toán tìm kiếm tuyến tính (linear search) trong mảng một chiều, điều kiện dừng vòng lặp là gì?

15 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

15. Khi sắp xếp mảng một chiều theo thứ tự tăng dần, ta cần thực hiện hành động nào?

16 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

16. Trong Pascal, nếu muốn tìm giá trị nhỏ nhất trong mảng một chiều arr có `n` phần tử, ta thường khởi tạo biến `min_val` bằng giá trị nào sau đây?

17 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

17. Cho đoạn chương trình Pascal sau: ```pascal var arr: array[1..5] of integer; i: integer; begin for i := 1 to 5 do arr[i] := i * 2; writeln(arr[3]); end. ``` Giá trị nào sẽ được in ra màn hình?

18 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

18. Cho mảng một chiều `arr` trong Pascal, nếu `arr` có 100 phần tử và được khai báo với chỉ số từ 1 đến 100, thì chỉ số của phần tử cuối cùng là bao nhiêu?

19 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

19. Phát biểu nào sau đây mô tả đúng về việc khởi tạo mảng hai chiều trong C++ với các giá trị cụ thể?

20 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

20. Cho mảng hai chiều `scores` trong C++, có kích thước 3x3. Để tính tổng các phần tử nằm trên đường chéo phụ (từ trên phải xuống dưới trái), ta cần duyệt các phần tử có điều kiện nào?

21 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

21. Phân tích đoạn mã C++ sau: ```cpp int data[3][2] = {{1, 2}, {3, 4}, {5, 6}}; cout << data[1][0]; ``` Giá trị nào sẽ được in ra màn hình?

22 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

22. Đoạn mã C++ sau thực hiện chức năng gì? ```cpp int arr[5] = {10, 20, 30, 40, 50}; int temp = arr[1]; arr[1] = arr[3]; arr[3] = temp; ```

23 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

23. Phát biểu nào sau đây mô tả chính xác nhất mục đích của việc sử dụng mảng trong lập trình?

24 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

24. Khi làm việc với mảng hai chiều trong ngôn ngữ lập trình C++, câu lệnh nào sau đây khai báo một ma trận có 3 hàng và 4 cột, với các phần tử là số nguyên?

25 / 25

Category: Trắc nghiệm Tin học 11 Kết nối tri thức KHMT bài 18 Thực hành mảng một chiều và hai chiều

Tags: Bộ đề 1

25. Trong Pascal, để tìm giá trị lớn nhất trong mảng một chiều arr có `n` phần tử, ta thường khởi tạo biến `max_val` bằng giá trị nào sau đây?