Đề 1 – 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

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

1. Lỗi 'logic′ (logic error) trong chương trình là gì?

A. Lỗi do sai cú pháp ngôn ngữ.
B. Lỗi khiến chương trình chạy sai mục đích, dù không báo lỗi.
C. Lỗi do thiếu bộ nhớ.
D. Lỗi do chia cho 0.

2. Trong quản lý bộ nhớ, 'garbage collection′ là quá trình gì?

A. Thu gom các lỗi cú pháp trong mã nguồn.
B. Tự động giải phóng bộ nhớ không còn được chương trình sử dụng.
C. Tối ưu hóa tốc độ truy cập bộ nhớ.
D. Phân chia bộ nhớ thành các vùng nhỏ hơn.

3. Khái niệm 'tham chiếu′ (reference) trong lập trình khác với 'biến′ (variable) thông thường như thế nào?

A. Tham chiếu lưu trữ trực tiếp giá trị, biến lưu trữ địa chỉ.
B. Tham chiếu là một tên khác cho một biến đã tồn tại, biến tạo ra vùng nhớ mới.
C. Biến chỉ dùng cho số, tham chiếu dùng cho mọi kiểu dữ liệu.
D. Không có sự khác biệt.

4. Bộ nhớ 'stack′ và 'heap′ khác nhau chủ yếu ở điểm nào?

A. Stack chậm hơn Heap.
B. Stack quản lý bộ nhớ tĩnh, Heap quản lý bộ nhớ động.
C. Stack dùng cho biến toàn cục, Heap dùng cho biến cục bộ.
D. Stack chỉ lưu trữ số nguyên, Heap lưu trữ mọi kiểu dữ liệu.

5. Nguyên tắc 'DRY′ (Don′t Repeat Yourself) trong lập trình có nghĩa là gì?

A. Viết mã nguồn càng nhanh càng tốt.
B. Tránh lặp lại mã nguồn giống nhau, tái sử dụng code khi có thể.
C. Chỉ sử dụng các biến cục bộ.
D. Viết chú thích chi tiết cho mọi dòng code.

6. Tính 'kế thừa′ (inheritance) trong lập trình hướng đối tượng cho phép điều gì?

A. Tạo ra các biến có phạm vi cục bộ.
B. Một lớp con (subclass) kế thừa thuộc tính và phương thức từ lớp cha (superclass).
C. Hạn chế truy cập vào dữ liệu của đối tượng.
D. Tạo ra các đối tượng độc lập hoàn toàn.

7. Cấu trúc dữ liệu 'danh sách liên kết′ (linked list) khác với 'mảng′ (array) như thế nào?

A. Danh sách liên kết có kích thước cố định, mảng có kích thước động.
B. Danh sách liên kết cho phép thêm∕xóa phần tử hiệu quả hơn ở giữa danh sách, mảng thì không.
C. Mảng cho phép truy cập ngẫu nhiên nhanh hơn danh sách liên kết.
D. Cả 2 và 3 đều đúng.

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

A. Lưu trữ dữ liệu tạm thời.
B. Tổ chức mã nguồn thành các khối có thể tái sử dụng.
C. Điều khiển tốc độ thực thi chương trình.
D. Quản lý bộ nhớ.

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

A. Sắp xếp dữ liệu theo thứ tự tăng dần.
B. Chia bài toán lớn thành các bài toán con nhỏ hơn, giải quyết từng bài toán con, rồi kết hợp kết quả.
C. Tìm kiếm tuần tự trong danh sách.
D. Lặp lại một khối lệnh cho đến khi điều kiện sai.

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

A. Khi cần lặp lại một khối lệnh cho đến khi một điều kiện sai.
B. Khi cần lặp lại một khối lệnh một số lần biết trước.
C. Khi cần thực thi một khối lệnh chỉ một lần duy nhất.
D. Khi cần định nghĩa một hàm mới.

11. Độ phức tạp thời gian (time complexity) của một giải thuật dùng để đo lường điều gì?

A. Lượng bộ nhớ sử dụng bởi giải thuật.
B. Thời gian thực thi của giải thuật trên một máy tính cụ thể.
C. Mức độ khó hiểu của mã nguồn giải thuật.
D. Cách thời gian thực thi của giải thuật tăng lên theo kích thước đầu vào.

12. Toán tử '==' (so sánh bằng) khác với toán tử '=' (gán) như thế nào?

A. '==' dùng để gán giá trị, '=' dùng để so sánh.
B. '==' trả về giá trị boolean sau khi so sánh, '=' gán giá trị cho biến.
C. Không có sự khác biệt giữa hai toán tử này.
D. '==' chỉ dùng cho số, '=' chỉ dùng cho chuỗi.

13. 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. Chọn một trong hai khối lệnh để thực thi dựa trên một điều kiện.
C. Định nghĩa một tập hợp các biến.
D. Tổ chức dữ liệu theo cấu trúc cây.

14. Cấu trúc dữ liệu 'mảng′ (array) có đặc điểm gì?

A. Kích thước có thể thay đổi linh hoạt trong quá trình chạy.
B. Lưu trữ các phần tử có cùng kiểu dữ liệu và truy cập ngẫu nhiên bằng chỉ số.
C. Các phần tử không cần có cùng kiểu dữ liệu.
D. Chỉ cho phép truy cập tuần tự.

15. Tính 'đa hình′ (polymorphism) trong lập trình hướng đối tượng nghĩa là gì?

A. Một đối tượng có nhiều thuộc tính.
B. Một phương thức có thể hoạt động khác nhau tùy thuộc vào đối tượng gọi nó.
C. Một lớp có thể có nhiều lớp con.
D. Dữ liệu được bảo vệ khỏi truy cập bên ngoài.

16. Quá trình 'gỡ lỗi′ (debugging) là gì?

A. Viết mã nguồn chương trình.
B. Tìm và sửa lỗi trong chương trình.
C. Biên dịch mã nguồn.
D. Chạy chương trình lần đầu tiên.

17. Thao tác nào sau đây KHÔNG phải là một phép toán số học cơ bản?

A. Phép cộng (+)
B. Phép gán (=)
C. Phép nhân (*)
D. Phép chia (∕)

18. Kiểu dữ liệu 'boolean′ thường được sử dụng để biểu diễn giá trị nào?

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

19. Khái niệm 'lớp′ (class) trong lập trình hướng đối tượng dùng để làm gì?

A. Tạo ra các biến toàn cục.
B. Định nghĩa khuôn mẫu cho các đối tượng.
C. Thực hiện các phép toán số học phức tạp.
D. Quản lý lỗi trong chương trình.

20. Giá trị trả về (return value) của hàm là gì?

A. Dữ liệu được truyền vào hàm.
B. Kết quả của việc thực thi các lệnh trong hàm.
C. Tên của hàm.
D. Địa chỉ bộ nhớ của hàm.

21. Tham số (parameter) của hàm được sử dụng để làm gì?

A. Xác định kiểu dữ liệu trả về của hàm.
B. Truyền dữ liệu vào hàm khi gọi.
C. Lưu trữ kết quả trả về của hàm.
D. Định nghĩa tên của hàm.

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

A. Lưu trữ dữ liệu có thể thay đổi trong quá trình thực thi chương trình.
B. Đại diện cho một hành động hoặc một phép tính cụ thể.
C. Điều khiển luồng thực thi của chương trình.
D. Định nghĩa cấu trúc dữ liệu phức tạp.

23. 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 tập hợp các bước hữu hạn để giải quyết một vấn đề.
C. Một loại lỗi thường gặp trong chương trình.
D. Một công cụ để kiểm thử mã nguồn.

24. 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 độ thực thi chương trình.
B. Giải thích mã nguồn cho người đọc.
C. Báo lỗi cho trình biên dịch.
D. Mã hóa mã nguồn.

25. Kiểu dữ liệu 'số nguyên′ (integer) thường được sử dụng để biểu diễn loại dữ liệu nào?

A. Các số có phần thập phân.
B. Văn bản hoặc ký tự.
C. Các số nguyên không có phần thập phân.
D. Giá trị logic (đúng∕sai).

26. Ngôn ngữ lập trình 'thông dịch′ (interpreted) khác với ngôn ngữ 'biên dịch′ (compiled) như thế nào?

A. Ngôn ngữ thông dịch chạy nhanh hơn ngôn ngữ biên dịch.
B. Ngôn ngữ thông dịch được dịch và thực thi từng dòng một tại thời điểm chạy.
C. Ngôn ngữ thông dịch cần biên dịch trước khi chạy.
D. Ngôn ngữ thông dịch chỉ dùng cho web.

27. Thủ tục biên dịch (compilation) trong lập trình là quá trình gì?

A. Chạy trực tiếp mã nguồn từng dòng một.
B. Dịch toàn bộ mã nguồn thành mã máy trước khi thực thi.
C. Kiểm tra lỗi cú pháp trong mã nguồn.
D. Tối ưu hóa hiệu suất của chương trình đang chạy.

28. Mục đích của việc sử dụng 'hằng số' (constant) trong lập trình là gì?

A. Lưu trữ các giá trị có thể thay đổi trong chương trình.
B. Lưu trữ các giá trị không thay đổi trong suốt quá trình thực thi chương trình.
C. Tăng tốc độ tính toán của chương trình.
D. Giảm thiểu sử dụng bộ nhớ.

29. Lỗi 'cú pháp′ (syntax error) xảy ra khi nào?

A. Khi chương trình chạy quá chậm.
B. Khi mã nguồn vi phạm quy tắc ngữ pháp của ngôn ngữ lập trình.
C. Khi chương trình cố gắng truy cập bộ nhớ không hợp lệ.
D. Khi kết quả chương trình không đúng như mong đợi.

30. Trong lập trình hướng đối tượng, 'đối tượng′ (object) là gì?

A. Một kiểu dữ liệu cơ bản.
B. Một thể hiện cụ thể của một lớp (class).
C. Một hàm đặc biệt dùng để khởi tạo dữ liệu.
D. Một cấu trúc điều khiển luồng.

1 / 30

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

Tags: Bộ đề 1

1. Lỗi `logic′ (logic error) trong chương trình là gì?

2 / 30

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

Tags: Bộ đề 1

2. Trong quản lý bộ nhớ, `garbage collection′ là quá trình gì?

3 / 30

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

Tags: Bộ đề 1

3. Khái niệm `tham chiếu′ (reference) trong lập trình khác với `biến′ (variable) thông thường như thế nào?

4 / 30

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

Tags: Bộ đề 1

4. Bộ nhớ `stack′ và `heap′ khác nhau chủ yếu ở điểm nào?

5 / 30

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

Tags: Bộ đề 1

5. Nguyên tắc `DRY′ (Don′t Repeat Yourself) trong lập trình có nghĩa là gì?

6 / 30

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

Tags: Bộ đề 1

6. Tính `kế thừa′ (inheritance) 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ộ đề 1

7. Cấu trúc dữ liệu `danh sách liên kết′ (linked list) khác với `mảng′ (array) như thế nào?

8 / 30

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

Tags: Bộ đề 1

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

9 / 30

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

Tags: Bộ đề 1

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

10 / 30

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

Tags: Bộ đề 1

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

11 / 30

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

Tags: Bộ đề 1

11. Độ phức tạp thời gian (time complexity) của một giải thuật dùng để đo lường điều gì?

12 / 30

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

Tags: Bộ đề 1

12. Toán tử `==` (so sánh bằng) khác với toán tử `=` (gán) như thế nào?

13 / 30

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

Tags: Bộ đề 1

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

14 / 30

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

Tags: Bộ đề 1

14. Cấu trúc dữ liệu `mảng′ (array) có đặc điểm gì?

15 / 30

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

Tags: Bộ đề 1

15. Tính `đa hình′ (polymorphism) trong lập trình hướng đối tượng nghĩa là gì?

16 / 30

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

Tags: Bộ đề 1

16. Quá trình `gỡ lỗi′ (debugging) là gì?

17 / 30

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

Tags: Bộ đề 1

17. Thao tác nào sau đây KHÔNG phải là một phép toán số học cơ bản?

18 / 30

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

Tags: Bộ đề 1

18. Kiểu dữ liệu `boolean′ thường được sử dụng để biểu diễn giá trị nào?

19 / 30

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

Tags: Bộ đề 1

19. Khái niệm `lớp′ (class) trong lập trình hướng đối tượng dùng để làm gì?

20 / 30

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

Tags: Bộ đề 1

20. Giá trị trả về (return value) của hàm là gì?

21 / 30

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

Tags: Bộ đề 1

21. Tham số (parameter) của hàm được sử dụng để làm gì?

22 / 30

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

Tags: Bộ đề 1

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

23 / 30

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

Tags: Bộ đề 1

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

24 / 30

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

Tags: Bộ đề 1

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

25 / 30

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

Tags: Bộ đề 1

25. Kiểu dữ liệu `số nguyên′ (integer) thường được sử dụng để biểu diễn loại dữ liệu nào?

26 / 30

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

Tags: Bộ đề 1

26. Ngôn ngữ lập trình `thông dịch′ (interpreted) khác với ngôn ngữ `biên dịch′ (compiled) như thế nào?

27 / 30

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

Tags: Bộ đề 1

27. Thủ tục biên dịch (compilation) trong lập trình là quá trình gì?

28 / 30

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

Tags: Bộ đề 1

28. Mục đích của việc sử dụng `hằng số` (constant) trong lập trình là gì?

29 / 30

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

Tags: Bộ đề 1

29. Lỗi `cú pháp′ (syntax error) xảy ra khi nào?

30 / 30

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

Tags: Bộ đề 1

30. Trong lập trình hướng đối tượng, `đối tượng′ (object) là gì?