wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

10,12,14,18

Total questions: 60

Worksheet time: 30mins

Name
Class
Date
1.

Câu 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âu 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.

Câu 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.

Câu 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.

Câ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.

Câu 6. Cho đoạn chương trình sau: def t(a1,b1): s=abs(a1-b1) return s a,b=map(int,input().split()) print(t(a,b)) Với a=2, b=4, sau khi thực hiện chương trình trên cho kết quả bằng:

a)

-2

b)

4

c)

2

d)

6

7.

Câu 7. Cuối dòng đầu tiên của định nghĩa hàm phải có:

a)

Dấu ':'

b)

Dấu ';'

c)

Dấu '.'

d)

Dấu ','

8.

Câu 8. Phát biểu nào sau đây là đúng?

a)

Nếu là hàm có kết quả thì trong thân hàm sẽ không có lệnh return.

b)

Nếu là hàm có kết quả thì trong thân hàm sẽ có lệnh return và theo sau là dãy giá trị trả về.

c)

Nếu là hàm có kết quả thì trong thân hàm sẽ là dãy các lệnh tính giá trị và không có lệnh return.

d)

Nếu là hàm có kết quả thì trong thân hàm sẽ duy nhất lệnh return.

9.

Câu 9. Khi sử dụng hàm sqrt() ta cần khai báo thư viện:

a)

math

b)

ramdom

c)

zlib

d)

datetime

10.

Câu 10. Cho các câu sau, số câu đúng là: 1) Sử dụng chương trình con sẽ làm chương trình dễ hiểu, dễ tìm lỗi hơn. 2) Hàm chỉ được gọi một lần duy nhất ở chương trình chính. 3) Hàm luôn trả một giá trị qua tên của hàm. 4) Python chỉ cho phép chương trình gọi một hàm xây dựng sẵn trong các thư viện của Python. 5) Khai báo hàm trong Python luôn có danh sách tham số.

a)

1.

b)

2

c)

3.

d)

4.

11.

Câu 11. Hàm gcd(x,y) trả về:

a)

Bội chung nhỏ nhất của x và y.

b)

Căn bậc hai của x và y.

c)

Ước chung lớn nhất của x và y.

d)

Trị tuyệt đối của x và y.

12.

Câu 12. Khi sử dụng hàm có sẵn (trong một thư viện) ta cần:

a)

Gọi hàm có sẵn thực hiện mà không cần xây dựng lại hàm đó.

b)

Phải xây dựng lại hàm đó.

c)

Phải khai báo hàm trước khi gọi.

d)

Phải khai báo và xây dựng lại.

13.

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

def  h(a1,b1):

          s=a1-b1

return s

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

t=h(a,b)

print(t)

Trong đoạn chương trình trên lời gọi hàm với đối số truyền vào là:

a)

h(a,b)

b)

h(a1,b1):

c)

return s

d)

s=a1-b1

14.

Phát biểu nào sau đây là sai khi nói về chương trình con?

a)

Giúp việc lập trình trở lên dễ dàng hơn.

b)

Tránh được việc phải viết đi viết lại cùng một dãy lệnh.

c)

Chương trình dễ hiểu, dễ đọc.

d)

Khó phát hiện lỗi.

15.

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

def  h(a1,b1):

          s=a1-b1

return s

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

t=h(a,b)

print(t)

a)

Tên hàm.

b)

Tham số hình thức.

c)

Tham số thực sự.

d)

Biến cục bộ.

16.

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 {}

17.

Hàm len() cho biết:

a)

Độ dài (hay số kí tự) của xâu.

b)

Chuyển xâu ban đầu thành kí tự in hoa.

c)

Vị trí của kí tự đầu tiên trong xâu.

d)

Vị trí của kí tự bất kỳ trong xâu.

18.

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

a)

1

b)

2

c)

3

d)

4

19.

Cho đoạn chương trình sau: s1='a' s2='b' print(s1+s2) Kết quả trên màn hình là:

a)

'a'

b)

'b'

c)

'ab'

d)

'ba'

20.

Hàm y.cout(x) cho biết:

a)

Vị trí xuất hiện đầu tiên của x trong y.

b)

Vị trí xuất hiện cuối cùng của x trong y.

c)

Cho biết số kí tự của xâu x+y

d)

Đếm số lần xuất hiện không giao nhau của x trong y.

21.

Cho đoạn chương trình sau: S1='abcd' S2='a' print(S1.cout(S2)) Trên màn hình sẽ xuất hiện giá trị là:

a)

1

b)

2

c)

3

d)

4

22.

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

a)

0

b)

1

c)

2

d)

3

23.

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

a)

'b'

b)

'a'

c)

'c'

d)

0

24.

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.

25.

Cho xâu s1='ha noi', xâu s2='ha noi cua toi'. Khẳng định nào sau đây là đúng?

a)

Xâu s2 lớn hơn xâu s1.

b)

Xâu s1 bằng xâu s2.

c)

Xâu s2 nhỏ hơn xâu s1.

d)

Xâu s2 lớn hơn hoặc bằng xâu s1.

26.

Hàm y.find(x) cho biết điều gì?

a)

Trả về vị trí xuất hiện cuối cùng của xâu x trong xâu y.

b)

Trả về số nguyên xác định vị trí đầu tiên trong xâu y mà từ đó xâu x xuất hiện như một xâu con của xâu y.

c)

Trả về số nguyên xác định vị trí đầu tiên trong xâu x mà từ đó xâu y xuất hiện như một xâu con của xâu x.

d)

Trả về vị trí xuất hiện cuối cùng của xâu y trong xâu x.

27.

Cho đoạn chương trình sau: s='abcde' print(s[1:4]) Trên màn hình máy tính sẽ xuất hiện xâu:

a)

'abc'

b)

'bcde'

c)

'bcd'

d)

'cde'

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[:4]) 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.

1. 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.

Để biết kích thước của danh sách ta dùng hàm:

a)

type()

b)

len()

c)

sort()

d)

pop()

32.

Để khởi tạo danh sách b có 5 phần tử 1, 2, 3, 4, 5 ta dùng viết:

a)

b = 1, 2, 3, 4, 5

b)

b = (1, 2, 3, 4, 5)

c)

b = [1..5]

d)

b = [1, 2, 3, 4, 5]

33.

Để 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()

34.

Để xóa phần tử thứ 2 trong danh sách a ta dùng lệnh:

a)

del(2)

b)

del a[2]

c)

del a

d)

remove(2)

35.

Để xóa tất cả các phần tử trong danh sách, ta gọi hàm thành viên:

a)

append()

b)

pop()

c)

clear()

d)

remove()

36.

Để 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[]

37.

Cho mảng a=[0,2,4,6]. Phần tử a[1]=?

a)

0

b)

2

c)

4

d)

6

38.

Cho đoạn chương trình: a=[1,2,3] a.append(4) 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=[4,1,2,3]

b)

a=[1,2,3]

c)

a=[1,2,3,4]

d)

a=[1,4,2,3]

39.

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]

40.

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]

41.

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

42.

Cho đoạn chương trình: a=[2,4,6] for i in a: print(2*i) Trên màn hình sẽ có các giá trị:

a)

2 4 6

b)

4 6 8

c)

4 6 12

d)

4 8 12

43.

Cho đoạn chương trình sau: a=[3,1,5,2] a.sort() print(a) Sau khi thực hiện đoạn chương trình trên, danh sách a hiển thị trên màn hình là:

a)

[1,2,3,5]

b)

[3,1,5,2]

c)

[5,3,2,1]

d)

[3,5,2,1]

44.

Để khởi tạo danh sách a là một danh sách rỗng ta viết:

a)

a=''

b)

a=[]

c)

a=[0]

d)

a=''

45.

Cho danh sách a gồm các phần tử [3,4,5]. Khi đó len(a)=?

a)

1

b)

2

c)

3

d)

4

46.

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

a)

2

b)

3

c)

4

d)

5

47.

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

48.

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.

49.

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.

50.

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.

51.

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.

52.

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

53.

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.

54.

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.

55.

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.

56.

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

57.

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

a)

Chương trình viết bằng ngôn ngữ lập trình bậc cao sẽ được dịch sang ngôn ngữ máy để thực hiện.

b)

Có hai chương trình dịch là biên dịch và thông dịch.

c)

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

d)

Không cần viết chương trình ta vẫn có thể giải một toán trên máy tính.

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...