Trắc nghiệm tin học 10 kết nối tri thức Bài 30 - Kiểm thử và gỡ lỗi chương trình

Bộ câu hỏi trắc nghiệm tin học 10 kết nối tri thức với cuộc sống. Câu hỏi và bài tập trắc nghiệm Bài 30 - Kiểm thử và gỡ lỗi chương trình. Bộ trắc nghiệm có 4 mức độ: Thông hiểu, nhận biết, vận dụng và vận dụng cao. Hi vọng, tài liệu này sẽ giúp thầy cô nhẹ nhàng hơn trong việc ôn tập. Theo thời gian, chúng tôi sẽ tiếp bổ sung thêm các câu hỏi.

CHƯƠNG 5: GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNH

        BÀI 30: KIỂM THỬ VÀ GỠ LỖI CHƯƠNG TRÌNH

A. TRẮC NGHIỆM

1. NHẬN BIẾT

Câu 1: Chương trình chạy phát sinh lỗi ngoại lệ NameError, nên xử lí như thế nào?

A. Kiểm tra lại chỉ số trong mảng.

B. Kiểm tra lại tên các biến và hàm.

C. Kiểm tra giá trị của số bị chia.

D. Kiểm tra kiểu dữ liệu nhập vào.

Câu 2: Điểm dừng (break point) trong các phần mềm soạn thảo lập trình có ý nghĩa gì?

A. Đó là vị trí chương trình chạy tới đó thì kết thúc.

B. Đó là vị trí chương trình dừng lại để người lập trình quan sát phát hiện lỗi.

C. Đó là vị trí chương trình mỗi khi chạy đến dòng lệnh đó sẽ kêu pip pip.

D. Đó là vị trí chương trình tạm dừng, người lập trình sẽ quan sát các biến của chương trình và có thể điều khiển để chương trình tiếp tục chạy.

Câu 3: Lỗi chương trình Python có bao nhiêu loại?

A. 2.

B. 3.

C. 4.

D. 5.

Câu 4: Làm thế nào để kiểm tra (test) và gỡ lỗi (debug) một chương trình?

A. Quan sát mã lỗi Runtime và bắt ngoại lệ.

B. Sử dụng nhiều bộ test dữ liệu.

C. In các thông số trung gian.

D. Tất cả các phương pháp trên.

Câu 5: Chương trình chạy phát sinh lỗi ngoại lệ ZeroDivision, nên xử lí như thế nào?

A. Kiểm tra lại giá trị số chia.

B. Kiểm tra lại chỉ số trong mảng.

C. Kiểm tra giá trị của số bị chia.

D. Kiểm tra kiểu dữ liệu nhập vào.

Câu 6: Thế nào là lỗi ngoại lệ trong Python?

A. Lỗi khi viết một câu lệnh sai cú pháp của ngôn ngữ lập trình.

B. Lỗi khi truy cập một biến chưa được khai báo.

C. Lỗi khi không thể thực hiện một lệnh nào đó của chương trình.

D. Lỗi khi chương trình biên dịch sang tệp exe.

Câu 7: Khi gặp lỗi liên quan đến giá trị của đối tượng Python sẽ báo lỗi gì?

A. ValueError.

B. IndentationError.

C. TypeError.

D. ZeroDivisionError.

Câu 8: Chương trình chạy phát sinh lỗi ngoại lệ TypeError, nên xử lí như thế nào?

A. Kiểm tra lại chỉ số trong mảng.

B. Kiểm tra lại giá trị số chia.

C. Kiểm tra giá trị của số bị chia.

D. Kiểm tra kiểu dữ liệu nhập vào.

Câu 9: Chương trình chạy phát sinh lỗi ngoại lệ IndexError, nên xử lí như thế nào?

A. Kiểm tra lại giá trị số chia.

B. Kiểm tra lại chỉ số trong mảng.

C. Kiểm tra giá trị của số bị chia.

D. Kiểm tra kiểu dữ liệu nhập vào.

Câu 10: Bộ dữ liệu kiểm thử (test) có những tính chất gì?

A. Tính chất phát hiện lỗi của chương trình.

B. Cần có càng nhiều càng tốt.

C. Cần được sinh ngẫu nhiên và phủ kín các trường hợp biên của dữ liệu đầu vào bài toán.

D. Không cần có tính chất gì.

Câu 11: Mục đích của kiểm thử chương trình là gì?

A. Để tự động sửa lỗi chương trình.

B. Để tìm ra lỗi của chương trình.

C. Để tìm ra lỗi và tự động sửa lỗi chương trình.

D. Để tìm ra lỗi và phòng ngừa, ngăn chặn các lỗi phát sinh trong tương lai.

Câu 12: Phần mềm soạn thảo lập trình có thể tạo bao nhiêu điểm dừng?

A. 0.

B. 1.

C. Không hạn chế.

D. 10.

2. THÔNG HIỂU

Câu 1: Đâu không là công cụ để kiểm thử chương trình?

A. Công cụ in biến trung gian.

B. Công cụ sinh các bộ dữ liệu test.

C. Công cụ thống kê dữ liệu.

D. Công cụ điểm dừng trong phần mềm soạn thảo lập trình.

Câu 2: Chương trình sau nên sửa như thế nào. Chọn phương án đúng nhất

fruits = ['Banana', 'Apple', 'Lime']

print(fruits[4])

A. Thay đổi kiểu dữ liệu của từng phần tử trong mảng.

B. Kiểm tra chỉ số của mảng khi thực hiện lệnh.

C. Thay đổi tên mảng.

D. Chương trình không có lỗi.

Câu 3: Trong các phát biểu sau, phát biểu nào chưa chính xác về kiểm thử chương trình?

A. Hiện nay, có ít phương pháp và công cụ khác nhau để kiểm thử chương trình.

B. Chương trình cần được thử với một số bộ dữ liệu test gồm đầu vào tiêu biểu và kết quả đầu ra biết trước.

C. Các bộ test phụ thuộc vào các tiêu chí khác nhau.

D. Các bộ test dữ liệu nên có nhiều bộ test ngẫu nhiên,...

Câu 4: Phát biểu nào sau đây đúng nhất khi nói về các bộ dữ liệu test khi kiểm thử chương trình?

A. Các bộ test có thể có đầu vào theo các tiêu chí khác nhau.

B. Các bộ test có đầu vào theo một số tiêu chí nhất định.

C. Các bộ test có thể có đầu vào theo các tiêu chí khác nhau như độ lớn, tính đa dạng của dữ liệu.

D. Các bộ test có đầu vào phải theo các tiêu chí về độ lớn, tính đa dạng của dữ liệu.

Câu 5: Hoàn thành phát biểu sau: “Có rất nhiều công cụ và phương pháp khác nhau để kiểm thử chương trình. Các công cụ có mục đích … của chương trình và …, … các lỗi phát sinh trong tương lai”

A. Tìm ra lỗi, phòng ngừa, ngăn chặn.

B. Tìm ra lỗi, phòng ngừa, xử lí.

C. Phòng ngừa, ngăn chặn, xử lí lỗi.

D. Xử lí lỗi, phòng ngừa, ngăn chặn.

Câu 6: Nếu chương trình chạy bị lỗi với thông báo lỗi ZeroDivisionError thì đó là lỗi gì?

A. Lỗi không thể sửa được.

B. Đây lỗi chia hết cho 0.

C. Lỗi dữ liệu.

D. Lỗi giá trị của đối tượng.

Câu 7: Số phát biểu đúng trong các phát biểu sau:

1) Cần chú ý nên có nhiều bộ test khi test các bộ dữ liệu.

2) Việc sinh ngẫu nhiên dữ liệu đầu vào trong miền xác định của chương trình làm tăng khả năng tìm lỗi.

3) Thực tế cho thấy ít khi phát sinh lỗi tại các vùng biên hoặc lân cận biên.

4) Không thể sử dụng các lệnh print() để in ra các biến trung gian.

A. 2.

B. 3.

C. 1.

D. 4.

Câu 8: Chương trình sau có lỗi ở dòng lệnh nào?

n = int(input("Nhập số tự nhiên n: "))

s = ""

for i in range(10):

s = s + i

A. 1.

B. 2.

C. 3.

D. 4.

Câu 9: Giả sử đầu vào của dữ liệu bài toán là vùng {x ≥ 0]. Khi đó dữ liệu ở vùng biên là những dữ liệu nào?

A. x = 0.

B. x = 1000000.

C. x ở gần 0.

D. x ở gần 0 hoặc x rất lớn.

3. VẬN DỤNG

Câu 1: Để tính giá trị trung bình của một danh sách số A, người lập trình đã dùng lệnh gttb = sum(A) / len(A). Những mã lỗi ngoại lệ nào có thể xảy ra?

A. NameError.

B. ZeroDivisionError.

C. Không thể xảy ra lỗi

D. Có thể xảy ra cả hai lỗi trên.

Câu 2: Chương trình sau mắc lỗi gì?

def func(n)

a, b = 0, 1

while a < n:

print(a, end=' ')

a, b = b, a+b

print()

print(func(1000))

A. TypeError.

B. ZeroDivisionError.

C. Syntax Error.

D. NameError.

Câu 3: Chương trình sau bị lỗi ở dòng lệnh thứ bao nhiêu ?

>>> fruits = ['Banana', 'Apple', 'Lime']

>>> loud_fruits = [fruit.upper() for fruit in fruits]

>>> print(loud_fruits)

>>> list(enumerate(fruits))

A. 2.

B. 3.

C. 4.

D. Không phát sinh lỗi.

 

4. VẬN DỤNG CAO

Câu 1: Chương trình sau phát sinh lỗi gì?

>>> 1 / 0

0.5

>>> 2 ** 3

8

A. NameError.

B. TypeError.

C. ZeroDivisionError.

D. Syntax Error.

Thông tin tải tài liệu:

Phía trên chỉ là 1 phần, tài liệu khi tải về là file word, có nhiều hơn + đầy đủ đáp án. Xem và tải: Trắc nghiệm tin học 10 kết nối tri thức - Tại đây

Tài liệu khác

Tài liệu của bạn

Tài liệu môn khác

Tài liệu mới cập nhật

Chat hỗ trợ
Chat ngay