wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

KIỂM THỬ, GỠ LỖI, HÀM TIN 10 KNTT

Total questions: 42

Worksheet time: 24mins

Name
Class
Date
1.

Câu trả lời nào sau đây là đúng nhất? Để kiểm tra (test) và gỡ lỗi (debug) một chương trình có nhiều phương pháp, tiêu biểu như:

a)

Quan sát mã lỗi Runtime và bắt ngoại lệ, sử dụng nhiều bộ test dữ liệu, in các thông số trung gian, tạo các điểm dừng để quan sát thông tin khác bên trong chương trình.

b)

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

c)

Sử dụng nhiều bộ test dữ liệu, in các thông số trung gian

d)

Tạo các điểm dừng để quan sát thông tin khác bên trong chương trình

2.

Các công cụ dùng để kiểm tra và gỡ lỗi một chương trình gồm:

a)

Công cụ in biến trung gian, sinh các bộ dữ liệu test, break point

b)

Công cụ in biến trung gian

c)

Sinh các bộ dữ liệu test, break point

d)

Công cụ in biến trung gian, sinh các bộ dữ liệu test

3.

Chương trình của em khi chạy phát sinh lỗi ngoại lệ ZeroDivisionError. Đó là lỗi gì?

a)

Lỗi chia cho 0

b)

Lỗi cú pháp

c)

Lỗi thụt đầu dòng

d)

Lỗi đặt tên

4.
a)

Lỗi lôgic

b)

Lỗi kiểu dữ liệu

c)

Lỗi cú pháp

d)

Lỗi thụt đầu dòng

5.
a)

b)

c)

d)

6.

Khi chạy chương trình cho kết quả là: [10, 0, 1, 2, 4, 5, 8], đây là kết quả sai. Vậy chương trình trên bị lỗi gì?

a)

Lỗi lôgic

b)

Lỗi kiểu dữ liệu

c)

Lỗi cú pháp

d)

Lỗi thụt đầu dòng

7.

Chọn câu trả lời đúng nhất. Mục đích của kiểm thử chương trình là gì?

a)

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

b)

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

c)

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

d)

Để tìm ra lỗi và tự động khắc phục nó

8.

Đ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 tạm dừng lại cho phép người kiểm thử có thể quan sát các thông tin khác bên trong chương trình, qua đó kiểm tra tính đúng đắn của chương trình.

b)

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

c)

Đó là vị trí chương trình phát hiện lỗi

d)

Đó là vị trí chương trình phát ra tiếng kêu báo lỗi

9.

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)

TypeError

c)

NameError

d)

ZeroDivisionError

10.

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

a)

Không hạn chế

b)

1

c)

2

d)

3

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.

12.

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

a)

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

b)

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

c)

Dữ liệu đều giống nhau về độ lớn.

d)

Bộ test 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.

13.

Các phương pháp nào sau đây được coi là phương pháp kiểm thử chương trình?

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

2. Viết chú thích chi tiết cho chương trình.

3. Kiểm thử chương trình với các bộ dữ liệu test

4. Đặt tên biến và hàm có ý nghĩa.

5. Sử dụng công cụ break point (điểm dừng).

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

a)

1, 3, 5, 6

b)

1, 3, 4, 5

c)

3, 4, 5, 6

d)

2, 4, 5, 6

14.

Chương trình bên dưới lỗi ở dòng nào?

a)

Dòng 2, dòng 4

b)

Dòng 2, dòng 6

c)

Dòng 3, dòng 4

d)

Dòng 3, dòng 6

15.

Chương trình báo lỗi NameError, đây là lỗi:

a)

Xảy ra khi chương trình muốn tìm một tên nhưng không thấy.

b)

Xảy ra khi lệnh cố gắng truy cập phần tử của danh sách nhưng vượt quá chỉ số

c)

Xảy ra khi các dòng lệnh thụt vào không thẳng hàng hoặc không đúng vị trí

d)

Lỗi cú pháp

16.

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)

TypeError

c)

NameError

d)

ZeroDivisionError

17.

Cho đoạn chương trình sau:

a=int(input()

print a

Lỗi trong chương trình trên là lỗi:

a)

Cú pháp.

b)

Ngữ nghĩa

c)

Ngoại lệ

d)

Cả 3 loại lỗi.

18.

Đoạn chương trình bên báo lỗi:

1 3 10 0 Traceback (most recent call last): File "<pyshell#8>", line 2, in <module> 

       print (A[i], end=' ')

IndexError: list index out of range

Lỗi đó có nghĩa là:

a)

chỉ số vượt quá giới hạn cho phép

b)

nhập dữ liệu không đúng khuôn dạng

c)

Các dòng lệnh đặt sai vị trí

d)

lỗi logic bên trong chương trình

19.

Đoạn chương trình bên có lỗi tại dòng nào:

a)

dòng 2

b)

dòng 3

c)

dòng 4

d)

dòng 5

20.

Chương trình bên có phát sinh lỗi hay không? Nếu có phát sinh tại dòng nào?

a)

dòng 2

b)

dòng 3

c)

dòng 4

d)

Không phát sinh lỗi

21.

Tổng thể có thể phân biệt lỗi chương trình Python làm mấy loại?

a)

3

b)

2

c)

1

d)

4

22.

Chương trình báo lỗi ZeroDivitionError, lỗi này xãy ra khi nào?

a)

Lỗi này xãy khi thực hiện phép chia cho giá trị 0.

b)

Lỗi xãy ra khi lệnh cố gằng truy cập phần tử của danh sách nhưng chỉ số vượt quá giới hạn.

c)

Lỗi xãy ra khi chương trình muốn tìm một tên nhưng không thấy.

d)

Lỗi khi các dòng lệnh thụt vào không thẳng hàng hoặc không đúng vị trí.

23.

Chương trình báo lỗi SyntaxError. Đây là lỗi gì?

a)

Lỗi cú pháp

b)

Lỗi kiểu dữ liệu

c)

Lỗi liên quan đến giá trị của đối tượng

d)

Lỗi khi các dòng lệnh thụt vào không thẳng hàng hoặc không đúng vị trí

24.

Hãy nêu mã lỗi ngoại lệ của lệnh int(“abc”)?

a)

ValueError

b)

NameError

c)

SyntaxError

d)

TypeError

25.
a)

25

b)

75

c)

-25

d)

-75

26.

Hàm nào sau đây là hàm có sẵn trong Python?

a)

print( )

b)

hello( )

c)

xin_chao( )

d)

show_text( )

27.

Trong Python, từ khóa nào dùng để trả lại giá trị từ một hàm?

a)
output
b)

exit

c)

back

d)
return
28.

Khi nào một hàm không cần lệnh return?

a)

Khi hàm có nhiều tham số

b)

Khi hàm không cần trả lại giá trị

c)

Khi hàm chứa lệnh print( )

d)

Khi hàm có điều kiện if

29.

Kết quả của đoạn mã sau là gì?

a)

say_hello

b)

Xin chào !

c)

Không in gì cả

d)

Báo lỗi

30.

Hàm sau có chức năng gì?

>>> def sum(a,b):

return a+b

a)

Trả về giá trị a và b

b)

Trả về giá trị là tổng hai số a và b

c)

Trả về giá trị là tổng hai số a và b, hiển thị ra màn hình

d)

Trả về giá trị 2 số a và b được truyền vào

31.

Hãy cho biết kết quả của đoạn mã sau?

a)

7

b)

11

c)

5

d)

Lỗi

32.

Trong hàm có thể có bao nhiêu từ khóa return?

a)

1

b)

2

c)

3

d)

Không giới hạn

33.

Chọn 2 phát biểu đúng về hàm trong python

a)

Hàm có thể không có tham số

b)

Hàm có thể sử dụng nhiều lần trong chương trình

c)

Hàm phải có từ khóa return

d)

python có 1 loại hàm

34.

Quan sát đoạn mã và xác định

tên hàm

tham số hàm

giá trị trả về

a)

Tên hàm: Tinh

Tham số hàm: x,y

Giá trị trả về: k

b)

Tên hàm: Tinh(x,y)

Tham số hàm: x,y

Giá trị trả về: k

c)

Tên hàm: Tinh

Tham số hàm: x,y

Giá trị trả về: x-y

d)

Tên hàm: Tinh

Tham số hàm: không có

Giá trị trả về: k

35.

Phát biểu nào sau đây sai?

a)

Khối lệnh mô tả hàm được viết sau dấu “:” và không cần viết lùi vào

b)

Hàm trong Python được định nghĩa bằng từ khoá def, theo sau là tên hàm

c)

Hàm có thể có hoặc không có tham số

d)

Khối lệnh mô tả hàm được viết sau dấu “:” và viết lùi vào, thẳng hàng

36.

Cú pháp thiết lập hàm không trả lại giá trị là:

a)

b)

c)

d)

37.

Cú pháp thiết lập hàm có trả lại giá trị là:

a)

b)

c)

d)

38.
a)

4

b)

3

c)

5

d)

6

39.

Trong Python, một hàm có thể có bao nhiêu tham số?

a)

Tối đa 2 tham số

b)

Tối đa 5 tham số

c)

Không giới hạn số lượng tham số

d)

Chỉ có 1 tham số

40.

Đâu là cú pháp đúng để định nghĩa một hàm có tên hello trong Python?

a)

def hello:

b)

define hello():

c)

def hello():

d)

function hello()

41.

Trong Python, từ khóa nào được sử dụng để định nghĩa một hàm?

a)

lambda

b)

function

c)

def

d)

define

42.

Khi gọi một hàm, các giá trị được truyền vào trong dấu ngoặc đơn được gọi là gì?

a)

Biến toàn cục

b)

Tham số (parameters)

c)

Biến cục bộ

d)

Đối số (arguments)