wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Tin 10 CHK2

Total questions: 61

Worksheet time: 46mins

Name
Class
Date
1.

Hàm trong Python được khai báo theo mẫu:

a)

def tên_hàm(tham số):

Các lệnh mô tả hàm

b)

def tên_hàm(tham số)

Các lệnh mô tả hàm

c)

def tên_hàm()

Các lệnh mô tả hàm

d)

def (tham số):

Các lệnh mô tả hàm

2.

“Các lệnh mô tả hàm” phải viết:

a)

Thẳng hàng với lệnh def.

b)

Lùi vào theo quy định của Python.

c)

Ngay sau dấu hai chấm (:) và không xuống dòng.

d)

Viết thành khối và không được lùi vào.

3.

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

a)

Tên hàm do người lập trình đặt không cần theo quy tắc.

b)

Chương trình con là một đoạn câu lệnh thực hiện một việc nào đó được đặt tên.

c)

Muốn xây dựng hàm trả về giá trị xử lí, cần kết thúc hàm bằng câu lệnh return cùng với biểu thức hay biến chứa giá trị trả về.

d)

Các lệnh mô tả hàm phải viết lùi vào theo quy định của Python.

4.

Thư viện math cung cấp:

a)

Thủ tục vào ra của chương trình.

b)

Hỗ trợ việc tạo ra các lựa chọn ngẫu nhiên

c)

Các hằng và hàm toán học.

d)

Hỗ trợ trực tiếp các định dạng nén và lưu trữ dữ liệu

5.

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

def t(a1,b1):

s=a1*b1

a,b=map(int,input().split())

print(t(a,b))

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

a)

Thiếu lời gọi hàm.

b)

Thiếu dấu ’:’ cuối dòng đầu tiên của định nghĩa hàm.

c)

Thiếu tham số hình thức.

d)

Thiếu lệnh return giá trị cần trả về ở cuối thân hàm.

6.

Mô tả nào dưới đây về hàm là SAI?

a)

Không nhất thiết phải trả lại kết quả.

b)

Phải có tham số.

c)

Trong hàm có thể gọi lại chính hàm đó.

d)

Có thể có các biến cục bộ.

7.

Trong các cách sử dụng hàm sau, cách nào là phù hợp nhất?

a)

Khai báo lại hàm và gọi nó mỗi khi cần sử dụng.

b)

Khai báo hàm duy nhất một lần và gọi nó một lần duy nhất.

c)

Chỉ cần khai báo.

d)

Khai báo hàm một lần và gọi nó mỗi khi muốn sử dụng.

8.

Để khai báo một hàm, ta sử dụng từ khóa:

a)

define

b)

def

c)

function

d)

lambda

9.

Chương trình sau có bao nhiêu hàm (chương trình con)?

def Nhap():

x = input()

return x

def In(y):

print(y)

z = Nhap()

In(z)

a)

3

b)

2

c)

1

d)

0

10.

Xác định output của đoạn chương trình sau:

def SayHello():

               print ('Hello!')

SayHello()

SayHello()

a)

SayHelloSayHello

b)

Không có đáp án đúng

c)

Hello!Hello!

d)

'Hello!''Hello!'

11.

Cho biết kết quả đưa ra màn hình sau khi thực hiện chương trình sau:

def godoit(x, y):

x = y

y = 0

print( x, y, end = ' ' )

x = 1

y = 2

godoit(x, y )

print(x, y )

a)

1 0 2 0

b)

2012

c)

2 0 1 2

d)

2 01 2

12.

Cho biết kết quả đưa ra màn hình sau khi thực hiện chương trình sau:

def doi(x, y):

t = x

x = y

y = t

print(x+y)

a = '1'

b = '2'

doi(a, b)

a)

1 2

b)

21

c)

2 1

d)

12

13.

Output của đoạn chương trình sau là gì?

def TM(a, b):

if a > b: print('a lớn hơn')

elif a == b: print('Bằng nhau')

else: print('b lớn hơn')

TM(9, 5)

a)

9

b)

9 lớn hơn

c)

b lớn hơn

d)

Không có đáp án đúng

14.

Xâu kí tự được đặt trong cặp dấu:

a)

Nháy đơn (‘’) hoặc nháy kép (“”)

b)

Ngoặc đơn ()

c)

Ngoặc vuông []

d)

Ngoặc nhọn {}

15.

Cho S là một biến kiểu xâu, muốn đo độ dài của xâu S ta viết:

a)

far(S)

b)

len(S)

c)

length(S)

d)

long(S)

16.

Cho xâu st=’abc’. Hàm len(st) có giá trị là:

a)

1

b)

2

c)

3

d)

4

17.

Để đếm số lần xuất hiện của xâu S1 trong xâu S, ta viết:

a)

S1 in S

b)

S1.count(S)

c)

S.count(S1)

d)

S in S1

18.

Cho xâu st=’abc’. S[0]=?

a)

‘b’

b)

‘a’

c)

‘c’

d)

0

19.

Hàm y.raplace(x1,x2) có nghĩa là:

a)

Tạo xâu mới từ xâu y bằng cách thay thế xâu con x2 của y bằng xâu x1.

b)

Tạo xâu mới bằng cách ghép xâu x1 và xâu x2.

c)

Thay thế xâu x1 bằng xâu x1+x2.

d)

Tạo xâu mới từ xâu y bằng cách thay thế xâu con x1 của y bằng xâu x2.

20.

Kết quả của đoạn code sau là?

a = 'THPT Đoàn Thị Điểm'

b = a[2:4]

print(b)

a)

PTC

b)

HPT

c)

PT

d)

THPT

21.

Cho 2 xâu s1='abcd' và s2='acb', sau khi thực hiện đoạn chương trình sau sẽ đưa ra màn hình kết quả nào?

if len(s1) < len(s2): print(s1)

else: print(s2)

a)

abc

b)

abcd

c)

acbabcd

d)

abcdacb

22.

Cách viết nào sau đây gán giá trị cho biến s kiểu xâu?

a)

s = 'Ngon ngu lap trinh Python'

b)

s = Ngon ngu lap trinh Python

c)

s == 'Ngon ngu lap trinh Python'

d)

s : = 'Ngon ngu lap trinh Python'

23.

Cho hai xâu s1='abcd' và s2='acb', sau khi thực hiện đoạn chương trình này sẽ đưa ra màn hình kết quả nào?

if len(s1) > len(s2): print(s1)

else: print(s2)

a)

abcdacb

b)

abcd

c)

acbabcd

d)

acb

24.

Xâu rỗng là xâu có độ dài bằng:

a)

-1

b)

0

c)

Tùy ý

d)

255

25.

Cách viết nào sau đây tham chiếu đúng phần tử thứ i của xâu S?

a)

S[',i',]

b)

S['i']

c)

S(i)

d)

S[i]

26.

Chọn phương án SAI: để kiểm tra xem kí tự đầu tiên của xâu S1 có trùng với kí tự cuối cùng của xâu S2 hay không, ta có thể viết biểu thức điều kiện là:

a)

S1[0] == S2[-1]

b)

S1[0] == S2[len(S2) – 1]

c)

S1[ - len(s1)] == S2[-1]

d)

S1[ - len(s1) + 1] == S2[-1]

27.

Hàm y.replace(x1,x2) có nghĩa là:

a)

Tạo xâu mới từ xâu y bằng cách thay thế xâu con x2 của y bằng xâu x1.

b)

Tạo xâu mới bằng cách ghép xâu x1 và xâu x2.

c)

Thay thế xâu x1 bằng xâu x1+x2.

d)

Tạo xâu mới từ xâu y bằng cách thay thế xâu con x1 của y bằng xâu x2.

28.

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

s=’abcde’

print(s[:4])

Trên màn hình máy tính sẽ xuất hiện xâu:

a)

‘abc’

b)

‘bcde’

c)

‘abcd’

d)

‘cde’

29.

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

s=’abcde’

print(s[3:])

Trên màn hình máy tính sẽ xuất hiện xâu:

a)

‘de’

b)

‘bcde’

c)

‘abcd’

d)

‘cde’

30.

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

y=’abcae’

x1=’a’

x2=’d’

print(y.replace(x1,x2))

Trên màn hình máy tính sẽ xuất hiện xâu:

a)

’bce’

b)

’adbcade’

c)

’dbcde’

d)

’dbcae’

31.

Dạng nào dưới đây là khai báo một biến kiểu list?

a)

H = [4, 8, 0, 1, 5]

b)

H = (4, 8, 0, 1, 5)

c)

H = {4, 8, 0, 1, 5}

d)

H = <4, 8, 0, 1, 5>

32.

Để thêm phần tử vào cuối danh sách ta dùng hàm:

a)

append()

b)

pop()

c)

clear()

d)

remove()

33.

Để gọi đến phần tử đầu tiên trong danh sách a ta dùng lệnh:

a)

a[1]

b)

a[0]

c)

a0

d)

a[]

34.

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

a=[1,2,3]

a.pop(2)

print(a)

Sau khi thực hiện đoạn chương trình trên thì danh sách a có các phần tử:

a)

a=[1,2]

b)

a=[2,3]

c)

a=[1,3]

d)

a=[2]

35.

Lệnh a.sort() thực hiện:

a)

Xóa danh sách a.

b)

Sắp xếp danh sách a theo thứ tự không giảm.

c)

Sắp xếp danh sách a theo thứ tự không tăng.

d)

Gọi đến phần tử đầu tiên trong danh sách a

36.

Biểu thức điều kiện nào sau đây biểu thị phần tử thứ i của list A nằm trong khoảng (-3, 9)?

a)

(A[i] < -3) and (A[i] > 9)

b)

(A[i] > -3) and (A[i] <9)

c)

(A[i]>-3) or (A[i] < 9)

d)

(-3 <= A[i] <= 9)

37.

Cho list A và đoạn chương trình như sau:

S = 0

for i in range(len(A)): S += A[i]

Đoạn chương trình trên thực hiện công việc?

a)

Tính tích các phần tử trong list

b)

Tính tổng các phần tử trong list

c)

Tính hiệu các phần tử trong list

d)

Tính thương các phần tử trong list

38.

Cho list A và đoạn chương trình như sau:

m = A[0]

for i in range(len(A)):

if A[i] > m: m = A[i]

Đoạn chương trình trên thực hiện công việc?

a)

Tìm chỉ số của phần tử nhỏ nhất trong list

b)

Tìm chỉ số của phần tử lớn nhất trong list

c)

Tìm phần tử lớn nhất trong list

d)

Tìm phần tử nhỏ nhất trong list

39.

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

a=[1,2,3]

a.insert(0,2)

print(a)

Sau khi thực hiện đoạn chương trình trên thì danh sách a có các phần tử:

a)

a=[0,1,2,3]

b)

a=[2,3]

c)

a=[2,1,2,3]

d)

a=[1,2,3,2]

40.

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

a=[1,2,3]

a.pop(2)

print(a)

Sau khi thực hiện đoạn chương trình trên thì danh sách a có các phần tử:

a)

a=[1,2]

b)

a=[2,3]

c)

a=[1,3]

d)

a=[2]

41.

Phát biểu nào sau đây là đúng về lỗi cú pháp?

a)

Là lỗi câu lệnh viết không theo đúng quy định của ngôn ngữ.

b)

Là lỗi xảy ra khi chương trình đang chạy, một lệnh nào đó không thể thực hiện.

c)

Là lỗi mặc dù các câu lệnh viết đúng quy định của ngôn ngữ nhưng sai trong thao tác xử lí nào đó.

d)

Tất cả các lỗi trên.

42.

Phát biểu nào sau đây là đúng về lỗi ngữ nghĩa?

a)

Là lỗi câu lệnh viết không theo đúng quy định của ngôn ngữ.

b)

Là lỗi xảy ra khi chương trình đang chạy, một lệnh nào đó không thể thực hiện.

c)

Là lỗi mặc dù các câu lệnh viết đúng quy định của ngôn ngữ nhưng sai trong thao tác xử lí nào đó.

d)

Tất cả các lỗi trên.

43.

Công cụ Debug dùng để:

a)

Chạy chương trình.

b)

Lưu chương trình.

c)

Mở chương trình.

d)

Gỡ lỗi.

44.

Khẳng định nào sau đây là sai?

a)

Lỗi ngữ nghĩa là lỗi khó phát hiện nhất.

b)

Ngôn ngữ lập trình Python cung cấp công cụ Debug để gỡ lỗi .

c)

Lỗi ngoại lệ là lỗi xảy ra khi chương trình đang chạy, một lệnh nào đó không thể thực hiện. Lỗi này sẽ được hiển thị ngay trên màn hình.

d)

Truy vết để tìm lỗi là một quá trình vô cùng đơn giản, không tốn thời gian.

45.

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)

Tất cả các lỗi trên.

46.

Để kiểm thử chương trình có bao nhiêu nhóm dữ liệu khác nhau cần tạo ra:

a)

1

b)

2

c)

3

d)

4

47.

Quá trình giải toán bằng lập trình trên máy tính có​​​ ... bước:

a)

4

b)

2

c)

3

d)

5

48.

Bước xác định bài toán là:

a)

Lựa chọn cách tổ chức dữ liệu và sử dụng ngôn ngữ lập trình để điễn đạt đúng thuật toán.

b)

Xác định những giá trị đã cho và mối quan hệ giữa chúng.

c)

Tìm thuật toán dựa trên bước xác định bài toán, dựa trên mối quan hệ giữa các đại lượng đã cho với những giá trị cần tìm, đồng thời xác định cách tổ chức dữ liệu có thể sử dụng tương ứng với thuật toán đó.

d)

Dùng các bộ dữ liệu khác nhau để kiểm thử và hiệu chỉnh chương trình.

49.

Các bước giải bài toán trên máy tính:

a)

Xác định bài toán → Tìm thuật toán của bài toán và cách tổ chức dữ liệu → Kiểm thử, chạy và hiệu chỉnh chương trình → Viết chương trình.

b)

Viết chương trình → Xác định bài toán → Tìm thuật toán của bài toán và cách tổ chức dữ liệu → Kiểm thử, chạy và hiệu chỉnh chương trình.

c)

Xác định bài toán → Kiểm thử, chạy và hiệu chỉnh chương trình → Viết chương trình → Tìm thuật toán của bài toán và cách tổ chức dữ liệu.

d)

Xác định bài toán → Tìm thuật toán của bài toán và cách tổ chức dữ liệu → Viết chương trình → Kiểm thử, chạy và hiệu chỉnh chương trình.

50.

Bước tìm thuật toán của bài toán và cách tổ chức dữ liệu là:

a)

Lựa chọn cách tổ chức dữ liệu và sử dụng ngôn ngữ lập trình để điễn đạt đúng thuật toán.

b)

Xác định những giá trị đã cho và mối quan hệ giữa chúng.

c)

Tìm thuật toán dựa trên bước xác định bài toán, dựa trên mối quan hệ giữa các đại lượng đã cho với những giá trị cần tìm, đồng thời xác định cách tổ chức dữ liệu có thể sử dụng tương ứng với thuật toán đó.

d)

Dùng các bộ dữ liệu khác nhau để kiểm thử và hiệu chỉnh chương trình.

51.

Bước viết chương trình là:

a)

Lựa chọn cách tổ chức dữ liệu và sử dụng ngôn ngữ lập trình để điễn đạt đúng thuật toán.

b)

Xác định những giá trị đã cho và mối quan hệ giữa chúng.

c)

Tìm thuật toán dựa trên bước xác định bài toán, dựa trên mối quan hệ giữa các đại lượng đã cho với những giá trị cần tìm, đồng thời xác định cách tổ chức dữ liệu có thể sử dụng tương ứng với thuật toán đó.

d)

Dùng các bộ dữ liệu khác nhau để kiểm thử và hiệu chỉnh chương trình.

52.

Bước kiểm thử, chạy và hiệu chỉnh chương trình là:

a)

Lựa chọn cách tổ chức dữ liệu và sử dụng ngôn ngữ lập trình để điễn đạt đúng thuật toán.

b)

Xác định những giá trị đã cho và mối quan hệ giữa chúng.

c)

Tìm thuật toán dựa trên bước xác định bài toán, dựa trên mối quan hệ giữa các đại lượng đã cho với những giá trị cần tìm, đồng thời xác định cách tổ chức dữ liệu có thể sử dụng tương ứng với thuật toán đó.

d)

Dùng các bộ dữ liệu khác nhau để kiểm thử và hiệu chỉnh chương trình.

53.

Có bao nhiêu chế độ dịch chương trình viết trên ngôn ngữ lập trình bậc cao sang ngôn ngữ máy:

a)

1

b)

2

c)

3

d)

4

54.

Khẳng định nào sau đây là đúng khi nói về chế độ biên dịch?

a)

Chương trình không còn lỗi cú pháp sẽ được dịch sang ngôn ngữ máy. Chương trình trên ngôn ngữ máy này sẽ được gọi ra ở mỗi lần cần thực hiện.

b)

Khi thực hiện chương trình, gặp đến câu lệnh nào thì câu lệnh đó sẽ được dịch sang ngôn ngữ máy để thực hiện. Trong quá trình thực hiện chương trình, nếu một câu lệnh được thực hiện bao nhiêu lần thì nó sẽ được dịch lại bấy nhiêu lần.

c)

Chương trình còn lỗi cú pháp sẽ được dịch sang ngôn ngữ máy.

d)

Khi thực hiện chương trình, các câu lệnh sẽ được dịch đồng thời sang ngôn ngữ máy để thực hiện.

55.

Khẳng định nào sau đây là đúng khi nói về chế độ thông dịch?

a)

Chương trình không còn lỗi cú pháp sẽ được dịch sang ngôn ngữ máy. Chương trình trên ngôn ngữ máy này sẽ được gọi ra ở mỗi lần cần thực hiện.

b)

Khi thực hiện chương trình, gặp đến câu lệnh nào thì câu lệnh đó sẽ được dịch sang ngôn ngữ máy để thực hiện. Trong quá trình thực hiện chương trình, nếu một câu lệnh được thực hiện bao nhiêu lần thì nó sẽ được dịch lại bấy nhiêu lần.

c)

Chương trình còn lỗi cú pháp sẽ được dịch sang ngôn ngữ máy.

d)

Khi thực hiện chương trình, các câu lệnh sẽ được dịch đồng thời sang ngôn ngữ máy để thực hiện.

56.

Bước quan trọng nhất để giải một bài toán trên máy tính là:

a)

Tìm thuật toán giải bài toán và cách tổ chức dữ liệu thiết kế thuật toán.

b)

Viết chương trình.

c)

Xác định bài toán.

d)

Kiểm thử chương trình.

57.

Mục đích của việc kiểm thử chương trình là:

a)

Xác định lại bài toán.

b)

Phát hiện và sửa lỗi.

c)

Mô tả chi tiết bài toán.

d)

Để tạo ra một chương trình mới

58.

Cho bài toán: Giải phương trình ax2+bx+c=0. Ở bước xác định bài toán ta xác định đươc:

a)

Dữ liệu bài toán cho là 3 số a,b,c. Cần tìm giá trị x thỏa mãn ax2+bx+c=0.

b)

Cần sử dụng ngôn ngữ Python để viết chương trình.

c)

Sử dụng bộ dữ liệu nhỏ để kiểm thử.

d)

Thuật toán để giải bài toán.

59.

Tiêu chí lựa chọn hoặc thiết kế thuật toán là gì?

a)

Hiệu quả về thời gian.

b)

Hiệu quả về không gian.

c)

Khả thi khi cài đặt.

d)

Tất cả đều đúng.

60.

Thuật toán tối ưu là:

a)

Sử dụng ít thời gian, ít bộ nhớ...

b)

Sử dụng ít thời gian, nhiều bộ nhớ, ít phép toán...

c)

Sử dụng nhiều thời gian, nhiều bộ nhớ, ít phép toán...

d)

Sử dụng nhiều thời gian, ít bộ nhớ, ít phép toán...

61.

Phần tự luận:

Câu hỏi: Cho dãy NN ngôi nhà sắp thành một hàng thẳng được đánh số từ 1 đến NN từ trái qua phải. Mặt trời mới mọc và chiếu sáng từ bên trái dãy nhà. Với mỗi ngôi nhà thứ ii có chiều cao là hihi , những ngôi nhà phía bên phải nó mà có chiều cao nhỏ hơn hihi sẽ không nhận được ánh nắng. Hãy cho biết có bao nhiêu ngôi nhà nhận được ánh nắng

a)

Dễ xơi :>

b)

Khó vại... @@