[KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

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


[KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

[KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

1. Để kiểm tra xem một vòng lặp có hoạt động đúng hay không, bạn có thể sử dụng kỹ thuật nào trong quá trình gỡ lỗi?

A. In giá trị của biến đếm của vòng lặp sau mỗi lần lặp.
B. Chạy chương trình với tốc độ bình thường và quan sát.
C. Xóa toàn bộ vòng lặp và viết lại.
D. Chỉ kiểm tra điều kiện thoát của vòng lặp.

2. Trong quá trình viết chương trình, khi gặp một lỗi cú pháp, điều đầu tiên cần làm là gì để xác định nguyên nhân?

A. Chạy thử chương trình để xem thông báo lỗi.
B. Đọc kỹ thông báo lỗi và xác định dòng code gây ra lỗi.
C. Hỏi bạn bè hoặc giáo viên về lỗi đó.
D. Tạm bỏ qua lỗi và tiếp tục viết phần khác của chương trình.

3. Công việc Kiểm thử (Testing) và Gỡ lỗi (Debugging) khác nhau ở điểm nào?

A. Kiểm thử là tìm lỗi, gỡ lỗi là sửa lỗi.
B. Kiểm thử là viết mã, gỡ lỗi là chạy mã.
C. Kiểm thử là tìm lỗi, gỡ lỗi là thêm tính năng.
D. Kiểm thử là sửa lỗi, gỡ lỗi là tìm lỗi.

4. Nếu chương trình của bạn yêu cầu nhập một số nguyên nhưng người dùng nhập một chuỗi ký tự, lỗi này thuộc loại nào?

A. Lỗi cú pháp.
B. Lỗi logic.
C. Lỗi thời gian chạy (hoặc lỗi nhập liệu tùy ngữ cảnh).
D. Lỗi biên dịch.

5. Để kiểm tra một điều kiện cụ thể trong chương trình, bạn có thể sử dụng điểm dừng (breakpoint) trong trình gỡ lỗi. Điều này có nghĩa là gì?

A. Chương trình sẽ dừng lại hoàn toàn và không chạy tiếp.
B. Chương trình sẽ tạm dừng thực thi tại dòng có điểm dừng, cho phép bạn kiểm tra trạng thái.
C. Điểm dừng chỉ dùng để đánh dấu vị trí.
D. Điểm dừng làm cho chương trình chạy nhanh hơn.

6. Tại sao việc ghi chú (comment) trong mã nguồn lại hữu ích cho việc gỡ lỗi?

A. Để làm cho mã nguồn trông dài hơn.
B. Để tạm thời vô hiệu hóa một phần mã nhằm cô lập lỗi hoặc kiểm tra luồng thực thi.
C. Để làm cho chương trình chạy nhanh hơn.
D. Để chỉ hiển thị cho người dùng cuối.

7. Nếu một chương trình liên tục yêu cầu nhập liệu mà không bao giờ kết thúc vòng lặp xử lý, đó có thể là lỗi gì?

A. Lỗi cú pháp.
B. Lỗi logic (vòng lặp vô hạn).
C. Lỗi thời gian chạy.
D. Lỗi biên dịch.

8. Phát biểu nào sau đây là đúng về vai trò của trình biên dịch (compiler) trong quá trình phát hiện lỗi?

A. Trình biên dịch chỉ phát hiện lỗi thời gian chạy.
B. Trình biên dịch giúp phát hiện lỗi cú pháp và một số lỗi logic cơ bản trước khi chương trình chạy.
C. Trình biên dịch không có vai trò trong việc phát hiện lỗi.
D. Trình biên dịch chỉ phát hiện lỗi do người dùng nhập sai.

9. Khi một chương trình không hoạt động như mong đợi và bạn không nhận được bất kỳ thông báo lỗi nào, bạn nên tập trung vào việc tìm kiếm loại lỗi nào?

A. Lỗi cú pháp.
B. Lỗi logic.
C. Lỗi thời gian chạy.
D. Lỗi biên dịch.

10. Khi sửa một lỗi, điều quan trọng cần lưu ý là gì?

A. Chỉ sửa lỗi đó và không quan tâm đến các phần khác của chương trình.
B. Đảm bảo rằng việc sửa lỗi không tạo ra các lỗi mới (regression bugs).
C. Sử dụng các đoạn mã có sẵn trên mạng mà không hiểu rõ.
D. Chỉ sửa lỗi khi có người khác yêu cầu.

11. Một lập trình viên viết một hàm để tính tổng các số từ 1 đến N. Tuy nhiên, hàm này lại tính tổng các số từ 0 đến N. Đây là lỗi gì?

A. Lỗi cú pháp.
B. Lỗi logic.
C. Lỗi thời gian chạy.
D. Lỗi nhập liệu.

12. Phát biểu nào sau đây mô tả đúng nhất về lỗi cú pháp (syntax error)?

A. Lỗi xảy ra khi chương trình chạy và cho kết quả sai.
B. Lỗi xảy ra khi mã nguồn không tuân thủ quy tắc ngữ pháp của ngôn ngữ lập trình.
C. Lỗi xảy ra khi chương trình bị treo.
D. Lỗi xảy ra do người dùng nhập sai dữ liệu.

13. Khi một chương trình báo Runtime error (Lỗi thời gian chạy), điều này thường ám chỉ điều gì?

A. Chương trình có lỗi cú pháp nghiêm trọng.
B. Chương trình gặp vấn đề trong quá trình thực thi, ví dụ như chia cho 0 hoặc truy cập bộ nhớ không hợp lệ.
C. Chương trình đã được viết không theo đúng quy chuẩn của ngôn ngữ.
D. Chương trình đã hoàn thành việc chạy nhưng không cho kết quả mong muốn.

14. Một chương trình thực hiện tính toán sai lệch nhỏ trong một số trường hợp cụ thể, nhưng không có lỗi rõ ràng nào được báo cáo. Đây có thể là dấu hiệu của loại lỗi nào?

A. Lỗi cú pháp.
B. Lỗi thời gian chạy.
C. Lỗi logic.
D. Lỗi nhập liệu.

15. Một lập trình viên viết một đoạn mã và nhận thấy rằng một biến luôn có giá trị là 0 mặc dù theo logic lẽ ra nó phải tăng dần. Đây là loại lỗi gì?

A. Lỗi cú pháp.
B. Lỗi thời gian chạy.
C. Lỗi logic.
D. Lỗi cấu trúc.

16. Khi bạn thực hiện refactoring (tái cấu trúc mã nguồn) mà không thay đổi chức năng của chương trình, mục đích chính là gì?

A. Để làm cho chương trình chạy chậm hơn.
B. Để làm cho mã nguồn dễ đọc, dễ hiểu và dễ bảo trì hơn, từ đó giảm thiểu khả năng phát sinh lỗi mới.
C. Để thêm các tính năng mới vào chương trình.
D. Để làm cho chương trình hoạt động không chính xác.

17. Phát biểu nào sau đây mô tả đúng nhất về quá trình gỡ lỗi (debugging)?

A. Viết lại toàn bộ mã nguồn để đảm bảo không có lỗi.
B. Tìm kiếm, xác định và sửa chữa các lỗi trong chương trình.
C. Thêm các tính năng mới cho chương trình.
D. Chỉ chạy thử chương trình để xem kết quả.

18. Khi sử dụng trình gỡ lỗi (debugger), hành động step into (đi vào) một hàm có ý nghĩa gì?

A. Chạy toàn bộ hàm đó và quay lại điểm gọi.
B. Dừng thực thi tại dòng đầu tiên của hàm đó để kiểm tra tiếp.
C. Bỏ qua việc thực thi hàm đó.
D. Thực thi hàm đó và tiếp tục ở dòng tiếp theo sau lệnh gọi hàm.

19. Phát biểu nào sau đây về lỗi tiềm ẩn (latent bug) là đúng?

A. Là lỗi chỉ xuất hiện khi chương trình bị treo.
B. Là lỗi đã tồn tại trong mã nguồn nhưng chưa được phát hiện hoặc kích hoạt.
C. Là lỗi do người dùng nhập sai dữ liệu.
D. Là lỗi chỉ xảy ra với một cấu hình phần cứng cụ thể.

20. Công cụ nào thường được sử dụng để theo dõi giá trị của biến trong quá trình thực thi chương trình nhằm phát hiện lỗi logic?

A. Trình biên dịch (Compiler).
B. Trình gỡ lỗi (Debugger).
C. Trình soạn thảo văn bản (Text Editor).
D. Trình quản lý tệp (File Manager).

21. Tại sao việc chia sẻ mã nguồn với người khác có thể giúp phát hiện lỗi?

A. Người khác có thể sao chép mã nguồn và sử dụng cho mục đích riêng.
B. Những người khác có thể có góc nhìn khác và phát hiện ra những lỗi mà bạn bỏ sót.
C. Việc chia sẻ mã nguồn làm cho chương trình chạy nhanh hơn.
D. Người khác sẽ sửa lỗi cho bạn miễn phí.

22. Nếu bạn quên đóng một dấu ngoặc đơn ( trong biểu thức toán học, trình biên dịch sẽ báo lỗi gì?

A. Lỗi thời gian chạy.
B. Lỗi logic.
C. Lỗi cú pháp.
D. Lỗi nhập liệu.

23. Trong các loại lỗi, lỗi nào thường là khó phát hiện và sửa chữa nhất?

A. Lỗi cú pháp.
B. Lỗi logic.
C. Lỗi thời gian chạy.
D. Lỗi biên dịch.

24. Khi gặp lỗi Stack Overflow, điều này thường xảy ra với loại cấu trúc lập trình nào?

A. Vòng lặp for.
B. Hàm đệ quy gọi chính nó quá nhiều lần.
C. Biến toàn cục.
D. Câu lệnh if-else.

25. Lỗi logic trong chương trình là gì?

A. Lỗi do người dùng nhập sai dữ liệu.
B. Lỗi do chương trình không hiển thị đúng kết quả như mong đợi, mặc dù không có thông báo lỗi.
C. Lỗi do máy tính bị treo hoặc khởi động lại đột ngột.
D. Lỗi do thiếu hoặc sai các dấu câu trong ngôn ngữ lập trình.

1 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

1. Để kiểm tra xem một vòng lặp có hoạt động đúng hay không, bạn có thể sử dụng kỹ thuật nào trong quá trình gỡ lỗi?

2 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

2. Trong quá trình viết chương trình, khi gặp một lỗi cú pháp, điều đầu tiên cần làm là gì để xác định nguyên nhân?

3 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

3. Công việc Kiểm thử (Testing) và Gỡ lỗi (Debugging) khác nhau ở điểm nào?

4 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

4. Nếu chương trình của bạn yêu cầu nhập một số nguyên nhưng người dùng nhập một chuỗi ký tự, lỗi này thuộc loại nào?

5 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

5. Để kiểm tra một điều kiện cụ thể trong chương trình, bạn có thể sử dụng điểm dừng (breakpoint) trong trình gỡ lỗi. Điều này có nghĩa là gì?

6 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

6. Tại sao việc ghi chú (comment) trong mã nguồn lại hữu ích cho việc gỡ lỗi?

7 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

7. Nếu một chương trình liên tục yêu cầu nhập liệu mà không bao giờ kết thúc vòng lặp xử lý, đó có thể là lỗi gì?

8 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

8. Phát biểu nào sau đây là đúng về vai trò của trình biên dịch (compiler) trong quá trình phát hiện lỗi?

9 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

9. Khi một chương trình không hoạt động như mong đợi và bạn không nhận được bất kỳ thông báo lỗi nào, bạn nên tập trung vào việc tìm kiếm loại lỗi nào?

10 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

10. Khi sửa một lỗi, điều quan trọng cần lưu ý là gì?

11 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

11. Một lập trình viên viết một hàm để tính tổng các số từ 1 đến N. Tuy nhiên, hàm này lại tính tổng các số từ 0 đến N. Đây là lỗi gì?

12 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

12. Phát biểu nào sau đây mô tả đúng nhất về lỗi cú pháp (syntax error)?

13 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

13. Khi một chương trình báo Runtime error (Lỗi thời gian chạy), điều này thường ám chỉ điều gì?

14 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

14. Một chương trình thực hiện tính toán sai lệch nhỏ trong một số trường hợp cụ thể, nhưng không có lỗi rõ ràng nào được báo cáo. Đây có thể là dấu hiệu của loại lỗi nào?

15 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

15. Một lập trình viên viết một đoạn mã và nhận thấy rằng một biến luôn có giá trị là 0 mặc dù theo logic lẽ ra nó phải tăng dần. Đây là loại lỗi gì?

16 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

16. Khi bạn thực hiện refactoring (tái cấu trúc mã nguồn) mà không thay đổi chức năng của chương trình, mục đích chính là gì?

17 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

17. Phát biểu nào sau đây mô tả đúng nhất về quá trình gỡ lỗi (debugging)?

18 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

18. Khi sử dụng trình gỡ lỗi (debugger), hành động step into (đi vào) một hàm có ý nghĩa gì?

19 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

19. Phát biểu nào sau đây về lỗi tiềm ẩn (latent bug) là đúng?

20 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

20. Công cụ nào thường được sử dụng để theo dõi giá trị của biến trong quá trình thực thi chương trình nhằm phát hiện lỗi logic?

21 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

21. Tại sao việc chia sẻ mã nguồn với người khác có thể giúp phát hiện lỗi?

22 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

22. Nếu bạn quên đóng một dấu ngoặc đơn ( trong biểu thức toán học, trình biên dịch sẽ báo lỗi gì?

23 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

23. Trong các loại lỗi, lỗi nào thường là khó phát hiện và sửa chữa nhất?

24 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

24. Khi gặp lỗi Stack Overflow, điều này thường xảy ra với loại cấu trúc lập trình nào?

25 / 25

Category: [KNTT] Trắc nghiệm Tin học 8 Bài 15 Gỡ lỗi

Tags: Bộ đề 1

25. Lỗi logic trong chương trình là gì?