wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Ôn Tập Cuối Học Kì II - Tin Học 10

Total questions: 37

Worksheet time: 20mins

Name
Class
Date
1.

Phát biểu nào sau đây sai khi mô tả về tham số và đối số của hàm trong Python?

a)

Khi gọi hàm, các tham số sẽ được truyền bằng giá trị thông qua đối số của hàm, số lượng giá trị được truyền vào hàm khác với số tham số trong khai báo của hàm.

b)

Tham số của hàm được định nghĩa khi khai báo hàm và được dùng như biến trong định nghĩa hàm.

c)

Đối số là giá trị được truyền vào khi gọi hàm.

d)

Khi gọi hàm, các tham số sẽ được truyền bằng giá trị thông qua đối số của hàm, số lượng giá trị được truyền vào hàm bằng với số tham số trong khai báo của hàm.

2.

Khi khai báo hàm trong Python, thành phần nào dưới đây được định nghĩa và được dùng như biến trong hàm?

a)

Tham số.

b)

Đối số.

c)

Dữ liệu.

d)

Giá trị.

3.

Phát biểu nào dưới đây bị sai khi mô tả về tham số và đối số của hàm trong Python?

a)

Một hàm khi khai báo có một tham số nhưng khi gọi hàm có thể có 2 đối số.

b)

Tham số được định nghĩa khi khai báo hàm.

c)

Tham số và đối số có một số điểm khác nhau.

d)

Khi gọi hàm, các tham số sẽ được truyền bằng giá trị thông qua đối số của hàm.

4.

Phương án nào sau đây chỉ ra số lượng tham số khi gọi hàm f(1, 2, 3)?

a)

3

b)

2

c)

1

d)

4

5.

Phương án nào sau đây chỉ ra kiểu dữ liệu của tham số khi gọi hàm f( '5.0')?

a)

str.

b)

float.

c)

int.

d)

Không xác định.

6.

Giả sử hàm f có hai tham số khi khai báo. Khi gọi hàm, 2 giá trị đối số nào sau đây truyền vào sẽ gây lỗi?

a)

10, c.

b)

2, 3.

c)

"a", "b".

d)

"a", "3".

7.

Xét đoạn chương trình trong Python như sau: Phương án nào dưới đây mô tả đúng tham số và đối số trong hàm trên?

a)

(a,b,c) là tham số, (10,x,y) là đối số.

b)

(a,b,c) là đối số, (x,y) là tham số.

c)

(a,b,c) và (x,y) đều là đối số.

d)

(a,b,c) và (x,y) đều là tham số.

8.

Cho hàm sau.

Phương án nào sau đây gọi hàm bị lỗi?

a)

f(a,b,c).

b)

x=10

f(5,7,x)

c)

f(1,2,3)

d)

x,y,z=10,20,5

f(x,y,z)

9.

Cho đoạn chương trình sau: Phương án nào dưới đây mô tả đoạn chương trình trên?

a)

Viết hàm yêu cầu người dùng nhập họ tên rồi đưa lời chào ra màn hình.

b)

Viết hàm yêu cầu nhập họ tên rồi đưa ra chiều dài của xâu vừa nhập.

c)

Viết hàm tính tổng các số dương của dãy A.

d)

Viết hàm tính tổng các số có trong danh sách A.

10.

Phương án nào dưới đây chỉ ra dòng lệnh bị lỗi ở đoạn chương trình bên dưới?

a)

4.

b)

3.

c)

1.

d)

5.

11.

Trong một buổi học lập trình, thầy giáo đã đưa ra đoạn code sau:

Một số bạn đã đưa ra các ý kiến sau đây đúng?

a)

Hàm trên có 2 tham số.

b)

Hàm trên không có trả về giá trị.

c)

Hàm trên có chức năng là tính giai thừa của số n được nhập từ bàn phím.

d)

Có thể thay thế chương trình trên như sau:

12.

Phương án nào sau đây điền từ đúng vào chỗ trống? "Trong Python tất cả các biến khai báo bên trong hàm đều có tính …, không có hiệu lực ở bên … hàm".

a)

cục bộ, ngoài.

b)

địa phương, trong.

c)

cục bộ, trong.

d)

toàn cục, ngoài.

13.

Phương án nào sau đây điền từ đúng vào chỗ trống? "Biến đã khai báo bên ngoài sẽ không có tác dụng bên trong hàm như một biến. Nếu muốn có tác dụng thì cần khai báo lại biến này trong hàm với từ khóa ……"

a)

global

b)

def

c)

len

d)

input

14.

Phương án nào dưới đây là sai khi mô tả phạm vi hoạt động của biến?

a)

Các biến được khai báo bên trong một hàm. Chương trình chính có thể sử dụng được.

b)

Biến đã khai báo bên ngoài hàm chỉ có thể truy cập giá trị để sử dụng bên trong hàm mà không làm thay đổi được giá trị của biến đó (trừ trường hợp vơi từ khoá global).

c)

Trong Python tất cả các biến khai báo bên trong hàm đều có tính địa phương (cục bộ), không có hiệu lực ở bên ngoài hàm.

d)

Các biến được khai báo bên trong một hàm chỉ được sử dụng bên trong hàm đó. Chương trình chính không sử dụng được.

15.

Phương án nào sau đây chỉ ra biến được khai báo và sử dụng bên trong một hàm?

a)

Biến cục bộ

b)

Biến riêng

c)

Biến tổng thể

d)

Biến toàn cục

16.

Phương án nào dưới đây chỉ ra dòng lệnh bị lỗi ở đoạn chương trình bên dưới?

a)

5

b)

4

c)

3

d)

Không có lỗi

17.

Phương án nào dưới đây chỉ ra giá trị của a, b sau khi thực hiện f(1,2)?

a)

1,2

b)

3,6

c)

3,2

d)

6,1

18.

Phương án nào dưới đây chỉ ra giá trị của biến t sau khi thực hiện chương trình?

a)

5

b)

10

c)

4

d)

15

19.

Trong một buổi học lập trình, thầy giáo đã đưa ra đoạn code sau:

Một số bạn đã đưa ra các ý kiến sau đây:

a)

Trong đoạn chương trình, các biến x, y, z là các biến cục bộ của chương trình.

b)

Trong đoạn chương trình,x, y là các biến ngoài hàm. Sau khi chạy hàm các biến x, y không thay đổi giá trị.

c)

Kết quả 51 không phải là kết quả của lệnh return x+y+z.

d)

Khi thực hiện lệnh >>> z cho kết quả là 26.

20.

Phương án nào sau đây điền từ đúng vào chỗ trống? "Chương trình chạy không lỗi ngoại lệ nhưng kết quả đưa ra …. Đây là lỗi … bên trong chương trình."

a)

sai, lôgic.

b)

đúng, Syntax Error.

c)

đúng, lôgic.

d)

sai, ngoại lệ.

21.

Phương án nào dưới đây chỉ ra lỗi ở đoạn chương trình bên dưới?

a)

Lỗi cú pháp.

b)

Lỗi nhận liệu không đúng khuôn dạng.

c)

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

d)

Lỗi login bên trong chương trình.

22.

Phương án nào dưới đây chỉ ra lỗi ở đoạn chương trình bên dưới?

a)

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

b)

Lỗi nhận liệu không đúng khuôn dạng.

c)

Lỗi cú pháp.

d)

Lỗi login bên trong chương trình.

23.

Phương án nào sau đây điền từ đúng vào chỗ trống? "Tổng thể có thể phân biệt lỗi chương trình Python làm …"

a)

ba loại.

b)

bốn loại.

c)

năm loại.

d)

6 loại.

24.

Phương án nào dưới đây sai khi mô tả về các lỗi trong Python?

a)

Cách xử lí các loại lỗi giống nhau.

b)

Có thể phân biệt lỗi chương trình Python làm ba loại.

c)

Khi có lỗi sai cú pháp, chương trình lập tức dừng và thông báo lỗi.

d)

Lỗi ngoại lệ là lỗi không thể thực hiện một lệnh trong chương trình.

25.

Phương án nào dưới đây chỉ ra lỗi ở đoạn chương trình bên dưới?

a)

NameError.

b)

Type Error.

c)

SyntaxError.

d)

ValueError.

26.

Phương án nào dưới đây chỉ ra lỗi ở đoạn chương trình bên dưới?

a)

IndexError.

b)

NameError.

c)

SyntaxError.

d)

ValueError.

27.

Phương án nào dưới đây chỉ ra lỗi ở đoạn chương trình bên dưới?

a)

Lôgic.

b)

Sai cú pháp.

c)

Lỗi ngoại lệ.

d)

Không có lỗi.

28.

Trong một buổi học lập trình, thầy giáo đã đưa ra đoạn code sau:

Một số bạn đã đưa ra các ý kiến sau đây:

a)

Chương trình báo lỗi sau:  SyntaxError: invalid syntax.

b)

Chương trình báo lỗi:

Traceback (most recent call last):

File "<pyshell#0>", line 1, in <module>

n = int(input("Nhập số n: "))

c)

Để sửa lỗi của chương trình ta có thể thay đổi như sau:

n=int(input(“Nhập số n= ”)) thành n=float(input(“Nhập số n= ”))

d)

Để sửa lỗi của chương trình ta có thể thay đổi nhập n bằng một giá trị số nguyên bất kỳ.

29.

Phương án nào sau đây điền từ đúng vào chỗ trống? "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.

30.

Chương trình chạy phát sinh lỗi ngoại lệ ZeroDivision, phương án xử lý nào dưới đây là hợp lý nhất?

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.

31.

Chương trình chạy phát sinh lỗi ngoại lệ IndexError, phương án xử lý nào dưới đây là hợp lý nhất?

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.

32.

Chương trình chạy phát sinh lỗi ngoại lệ TypeError, phương án xử lý nào dưới đây là hợp lý nhất?

a)

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

b)

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

c)

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

d)

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

33.

Chương trình sau bị lỗi. Phương án xử lý nào dưới đây là hiệu quả nhất?

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

print(fruits[4])

a)

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

b)

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

c)

Thay đổi tên mảng.

d)

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

34.

Trong một buổi học lập trình, thầy giáo đã đưa ra đoạn code sau: Một số bạn đã đưa ra các ý kiến sau đây:

a)

Nếu nhập a=50 và b=5 thì kết quả của chương trình là 55.

b)

Chương trình vẫn cho ra kết quả nhưng chức năng của chương trên không phải để là tính tổng 2 số a, b.

c)

Chương trình báo lỗi và không chạy được.

d)

Có thể sửa lại hai lệnh đầu như sau để tính tổng 2 số nguyên:

a=int(input("Nhập số a: "))

b=int(input("Nhập số b: "))

35.

Trong một buổi học lập trình về chủ đề phạm vi hoạt động của biến, giáo viên đã yêu cầu học sinh chỉ ra phạm vi hoạt động và giá trị của các biến trong đoạn code sau:

Một số bạn đã đưa ra các ý kiến sau đây:

a)

Biến địa phương (biến cục bộ) có phạm vi hoạt động ở bên ngoài hàm.

b)

Biến có từ khóa global đứng trước thì biến đó là biến tổng thể.

c)

Khi thực hiện lệnh >>> z cho kết quả lỗi vì z là biến cục bộ.

d)

Trong đoạn chương trình

x, y là các biến tổng thể. Sau khi chạy hàm các biến x, y không thay đổi giá trị.

36.

Trong một buổi học lập trình về chủ đề nhận biết các lỗi trong Python, giáo viên yêu cầu học sinh chỉ ra các lỗi và cách khắc phục lỗi ở đoạn code sau:

Một số bạn đã đưa ra các ý kiến sau đây:

a)

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

b)

SyntaxError là lỗi cú pháp.

c)

Lỗi của đoạn code trên là lỗi ngoại lệ IndexError.

d)

Để sửa lỗi của chương trình ta có thể thay đổi như sau:

n=int(input(“Nhập số n= ”))

thành

n=float(input(“Nhập số n= ”))

37.

Trong một buổi học lập trình, thầy giáo đã đưa ra đoạn code sau và yêu cầu học sinh nhận kiểm thử và gỡ lỗi:

Một số bạn đã đưa ra các ý kiến sau đây:

a)

Kiểu dữ liệu của biến a, b là kiểu int.

b)

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

c)

Chương trình vẫn cho ra kết quả nhưng chức năng của chương trên không phải để là tính tổng 2 số a, b.

d)

Có thể sửa lại hai lệnh đầu như sau để tính tổng 2 số nguyên:

          a=str(input(“Nhập số a: ”))

b=str(input(“Nhập số b: ”))