Đề 9 – Bài tập, đề thi trắc nghiệm online Cơ sở lập trình

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é!!!


Cơ sở lập trình

Đề 9 - Bài tập, đề thi trắc nghiệm online Cơ sở lập trình

1. Trong lập trình, 'ngăn xếp′ (stack) và 'hàng đợi′ (queue) là những loại cấu trúc dữ liệu nào?

A. Kiểu dữ liệu số học.
B. Kiểu dữ liệu logic.
C. Cấu trúc dữ liệu tuyến tính.
D. Cấu trúc dữ liệu phi tuyến tính.

2. Trong lập trình, 'hằng số' (constant) là gì?

A. Một biến có giá trị thay đổi trong quá trình chạy chương trình.
B. Một giá trị cố định, không thay đổi trong suốt quá trình thực thi chương trình.
C. Một loại hàm đặc biệt.
D. Một lỗi cú pháp.

3. Phép toán '==' trong hầu hết các ngôn ngữ lập trình thường được sử dụng để:

A. Gán giá trị cho một biến.
B. So sánh bằng giá trị giữa hai toán hạng.
C. Thực hiện phép cộng hai số.
D. Kiểm tra kiểu dữ liệu của một biến.

4. Ngôn ngữ lập trình bậc cao (high-level programming language) khác với ngôn ngữ lập trình bậc thấp (low-level programming language) chủ yếu ở điểm nào?

A. Ngôn ngữ bậc cao chạy nhanh hơn.
B. Ngôn ngữ bậc thấp dễ học hơn.
C. Ngôn ngữ bậc cao gần gũi với ngôn ngữ tự nhiên của con người hơn, dễ đọc, dễ viết và trừu tượng hóa phần cứng tốt hơn.
D. Ngôn ngữ bậc thấp có nhiều thư viện hỗ trợ hơn.

5. Trong lập trình, 'kiểu dữ liệu trừu tượng′ (abstract data type - ADT) là gì?

A. Một kiểu dữ liệu cụ thể được xây dựng sẵn trong ngôn ngữ.
B. Một kiểu dữ liệu được định nghĩa bởi các thao tác có thể thực hiện trên nó và các tính chất toán học của các thao tác đó, mà không cần quan tâm đến cách dữ liệu được lưu trữ cụ thể.
C. Một kiểu dữ liệu chỉ dùng cho số nguyên.
D. Một kiểu dữ liệu chỉ dùng cho chuỗi ký tự.

6. Khái niệm 'đa hình′ (polymorphism) trong lập trình hướng đối tượng cho phép điều gì?

A. Tăng tính bảo mật cho dữ liệu.
B. Giảm sự phụ thuộc giữa các đối tượng.
C. Các đối tượng thuộc các lớp khác nhau có thể phản ứng với cùng một thông điệp theo những cách khác nhau.
D. Tạo ra các đối tượng không thể thay đổi.

7. Cấu trúc điều khiển 'if-else′ được sử dụng để làm gì?

A. Lặp lại một khối lệnh nhiều lần.
B. Xử lý ngoại lệ trong chương trình.
C. Thực hiện một khối lệnh dựa trên điều kiện đúng hoặc một khối lệnh khác nếu điều kiện sai.
D. Định nghĩa các biến toàn cục.

8. Trong lập trình, biến (variable) được sử dụng để làm gì?

A. Lưu trữ và đại diện cho dữ liệu có thể thay đổi trong quá trình thực thi chương trình.
B. Điều khiển luồng thực thi của chương trình.
C. Định nghĩa các hàm và thủ tục.
D. Tối ưu hóa hiệu suất của chương trình.

9. Hàm (function) trong lập trình có vai trò chính là gì?

A. Tăng tốc độ thực thi chương trình.
B. Giảm dung lượng bộ nhớ sử dụng.
C. Chia chương trình thành các khối mã nhỏ hơn, có tính tái sử dụng và dễ quản lý.
D. Kiểm soát quyền truy cập vào dữ liệu.

10. Biến toàn cục (global variable) khác với biến cục bộ (local variable) như thế nào?

A. Biến toàn cục có tốc độ truy cập nhanh hơn.
B. Biến cục bộ được khai báo bên ngoài hàm, biến toàn cục bên trong hàm.
C. Biến toàn cục có phạm vi sử dụng trong toàn bộ chương trình, biến cục bộ chỉ trong phạm vi khối lệnh hoặc hàm mà nó được khai báo.
D. Biến cục bộ chỉ dùng cho số nguyên, biến toàn cục cho các kiểu dữ liệu khác.

11. Phương pháp 'chia để trị' (divide and conquer) trong thiết kế giải thuật là gì?

A. Một kỹ thuật sắp xếp dữ liệu.
B. Một phương pháp gỡ lỗi chương trình.
C. Phân chia bài toán lớn thành các bài toán con nhỏ hơn, giải quyết các bài toán con và kết hợp kết quả để giải quyết bài toán ban đầu.
D. Một cách để tối ưu hóa bộ nhớ sử dụng.

12. Mục tiêu chính của việc 'tối ưu hóa mã' (code optimization) là gì?

A. Làm cho mã nguồn dễ đọc hơn.
B. Giảm kích thước mã nguồn.
C. Cải thiện hiệu suất chương trình, làm cho chương trình chạy nhanh hơn hoặc sử dụng tài nguyên hiệu quả hơn (bộ nhớ, CPU).
D. Thêm chú thích vào mã nguồn.

13. Quy trình 'gỡ lỗi′ (debugging) trong lập trình là gì?

A. Viết mã nguồn chương trình.
B. Biên dịch chương trình.
C. Tìm và sửa lỗi trong chương trình.
D. Tối ưu hóa hiệu suất chương trình.

14. Thủ tục biên dịch (compilation) chương trình nguồn thành mã máy có ưu điểm chính nào?

A. Dễ dàng sửa lỗi và gỡ rối.
B. Chương trình chạy nhanh hơn sau khi biên dịch.
C. Mã nguồn dễ đọc và dễ hiểu hơn.
D. Khả năng tương thích cao với nhiều hệ điều hành.

15. Kiểu dữ liệu 'boolean′ thường biểu diễn giá trị nào?

A. Số nguyên.
B. Số thực.
C. Chuỗi ký tự.
D. Giá trị logic đúng hoặc sai (true∕false).

16. Kiểu dữ liệu 'chuỗi′ (string) được sử dụng để biểu diễn loại dữ liệu nào?

A. Số nguyên.
B. Số thực.
C. Văn bản, dãy ký tự.
D. Giá trị logic.

17. Vòng lặp 'for′ thường được sử dụng khi nào?

A. Khi số lần lặp không xác định trước.
B. Khi cần lặp lại một khối lệnh với số lần biết trước hoặc có thể xác định.
C. Để định nghĩa các hàm đệ quy.
D. Để xử lý sự kiện từ người dùng.

18. Trong lập trình hướng đối tượng (OOP), khái niệm 'đối tượng′ (object) đại diện cho điều gì?

A. Một kiểu dữ liệu cơ bản.
B. Một bản thiết kế cho các lớp.
C. Một thể hiện cụ thể của một lớp, mang các thuộc tính và phương thức.
D. Một đơn vị lưu trữ dữ liệu trên ổ cứng.

19. Mục đích chính của việc sử dụng chú thích (comment) trong mã nguồn là gì?

A. Tăng tốc độ biên dịch chương trình.
B. Làm cho mã nguồn dễ đọc và dễ hiểu hơn cho con người.
C. Giảm dung lượng file mã nguồn.
D. Bảo vệ mã nguồn khỏi bị sao chép.

20. Lỗi cú pháp (syntax error) trong lập trình xảy ra khi nào?

A. Chương trình chạy không đúng kết quả mong đợi.
B. Vi phạm các quy tắc ngữ pháp của ngôn ngữ lập trình.
C. Bộ nhớ máy tính không đủ để chạy chương trình.
D. Lỗi logic trong giải thuật.

21. Giải thuật (algorithm) trong lập trình là gì?

A. Một ngôn ngữ lập trình cụ thể.
B. Một công cụ để kiểm thử chương trình.
C. Một tập hợp các bước hướng dẫn rõ ràng để giải quyết một vấn đề cụ thể.
D. Một loại lỗi thường gặp trong chương trình.

22. Đệ quy (recursion) trong lập trình là gì?

A. Một kỹ thuật sắp xếp dữ liệu.
B. Một phương pháp gỡ lỗi chương trình.
C. Một hàm tự gọi chính nó để giải quyết bài toán.
D. Một kiểu dữ liệu đặc biệt.

23. Kiểu dữ liệu 'số thực dấu phẩy động′ (floating-point number) được sử dụng để biểu diễn loại số nào?

A. Số nguyên.
B. Số hữu tỷ.
C. Số thập phân hoặc số có phần lẻ.
D. Số phức.

24. Khái niệm 'con trỏ' (pointer) trong một số ngôn ngữ lập trình (như C, C++) dùng để làm gì?

A. Lưu trữ giá trị của một biến.
B. Lưu trữ địa chỉ bộ nhớ của một biến.
C. Định nghĩa kiểu dữ liệu mới.
D. Tăng tốc độ thực thi chương trình.

25. Thao tác 'ép kiểu′ (type casting) trong lập trình là gì?

A. Tạo ra kiểu dữ liệu mới.
B. Chuyển đổi một giá trị từ kiểu dữ liệu này sang kiểu dữ liệu khác.
C. Kiểm tra kiểu dữ liệu của một biến.
D. Xóa bỏ kiểu dữ liệu của một biến.

26. Trong quản lý bộ nhớ, 'rò rỉ bộ nhớ' (memory leak) xảy ra khi nào?

A. Bộ nhớ được sử dụng quá nhiều.
B. Chương trình cố gắng truy cập vào vùng nhớ không được cấp phép.
C. Bộ nhớ đã cấp phát không được giải phóng sau khi không còn sử dụng, dẫn đến lãng phí bộ nhớ theo thời gian.
D. Bộ nhớ bị hỏng do lỗi phần cứng.

27. Trong lập trình hướng đối tượng, 'tính kế thừa′ (inheritance) mang lại lợi ích gì?

A. Tăng tính bảo mật cho dữ liệu.
B. Giảm sự phụ thuộc giữa các đối tượng.
C. Cho phép lớp con kế thừa các thuộc tính và phương thức từ lớp cha, tái sử dụng mã và xây dựng hệ thống phân cấp lớp.
D. Cải thiện hiệu suất sử dụng bộ nhớ.

28. Trong lập trình, 'mảng′ (array) là gì?

A. Một kiểu dữ liệu cơ bản chỉ chứa một giá trị.
B. Một tập hợp các biến có kiểu dữ liệu khác nhau.
C. Một cấu trúc dữ liệu chứa một tập hợp các phần tử có cùng kiểu dữ liệu, được lưu trữ liên tiếp trong bộ nhớ.
D. Một phương pháp truy cập dữ liệu từ xa.

29. Trong lập trình, 'kiểm thử đơn vị' (unit testing) là gì?

A. Kiểm thử toàn bộ hệ thống.
B. Kiểm thử từng module sau khi tích hợp.
C. Kiểm thử từng đơn vị mã (hàm, phương thức, lớp) riêng lẻ để đảm bảo chúng hoạt động đúng như thiết kế.
D. Kiểm thử hiệu năng của chương trình.

30. Trong lập trình web, ngôn ngữ nào thường được sử dụng ở phía máy khách (client-side)?

A. SQL.
B. Java.
C. JavaScript.
D. Python.

1 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

1. Trong lập trình, `ngăn xếp′ (stack) và `hàng đợi′ (queue) là những loại cấu trúc dữ liệu nào?

2 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

2. Trong lập trình, `hằng số` (constant) là gì?

3 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

3. Phép toán `==` trong hầu hết các ngôn ngữ lập trình thường được sử dụng để:

4 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

4. Ngôn ngữ lập trình bậc cao (high-level programming language) khác với ngôn ngữ lập trình bậc thấp (low-level programming language) chủ yếu ở điểm nào?

5 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

5. Trong lập trình, `kiểu dữ liệu trừu tượng′ (abstract data type - ADT) là gì?

6 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

6. Khái niệm `đa hình′ (polymorphism) trong lập trình hướng đối tượng cho phép điều gì?

7 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

7. Cấu trúc điều khiển `if-else′ được sử dụng để làm gì?

8 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

8. Trong lập trình, biến (variable) được sử dụng để làm gì?

9 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

9. Hàm (function) trong lập trình có vai trò chính là gì?

10 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

10. Biến toàn cục (global variable) khác với biến cục bộ (local variable) như thế nào?

11 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

11. Phương pháp `chia để trị` (divide and conquer) trong thiết kế giải thuật là gì?

12 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

12. Mục tiêu chính của việc `tối ưu hóa mã` (code optimization) là gì?

13 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

13. Quy trình `gỡ lỗi′ (debugging) trong lập trình là gì?

14 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

14. Thủ tục biên dịch (compilation) chương trình nguồn thành mã máy có ưu điểm chính nào?

15 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

15. Kiểu dữ liệu `boolean′ thường biểu diễn giá trị nào?

16 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

16. Kiểu dữ liệu `chuỗi′ (string) được sử dụng để biểu diễn loại dữ liệu nào?

17 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

17. Vòng lặp `for′ thường được sử dụng khi nào?

18 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

18. Trong lập trình hướng đối tượng (OOP), khái niệm `đối tượng′ (object) đại diện cho điều gì?

19 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

19. Mục đích chính của việc sử dụng chú thích (comment) trong mã nguồn là gì?

20 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

20. Lỗi cú pháp (syntax error) trong lập trình xảy ra khi nào?

21 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

21. Giải thuật (algorithm) trong lập trình là gì?

22 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

22. Đệ quy (recursion) trong lập trình là gì?

23 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

23. Kiểu dữ liệu `số thực dấu phẩy động′ (floating-point number) được sử dụng để biểu diễn loại số nào?

24 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

24. Khái niệm `con trỏ` (pointer) trong một số ngôn ngữ lập trình (như C, C++) dùng để làm gì?

25 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

25. Thao tác `ép kiểu′ (type casting) trong lập trình là gì?

26 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

26. Trong quản lý bộ nhớ, `rò rỉ bộ nhớ` (memory leak) xảy ra khi nào?

27 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

27. Trong lập trình hướng đối tượng, `tính kế thừa′ (inheritance) mang lại lợi ích gì?

28 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

28. Trong lập trình, `mảng′ (array) là gì?

29 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

29. Trong lập trình, `kiểm thử đơn vị` (unit testing) là gì?

30 / 30

Category: Cơ sở lập trình

Tags: Bộ đề 9

30. Trong lập trình web, ngôn ngữ nào thường được sử dụng ở phía máy khách (client-side)?