wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Untitled Quiz

Total questions: 49

Worksheet time: 25mins

Name
Class
Date
1.

Câu 1. Phát biểu nào dưới đây về mảng một chiều là đúng?

a)

A. Cấu trúc dữ liệu bao gồm các phần tử có

thể thuộc các kiểu dữ liệu khác nhau.

b)

B. Cấu trúc dữ liệu tuyến tính bao gồm các

phần tử thuộc cùng một kiểu dữ liệu.

c)

C. Tập hợp bao gồm các phần tử có thể

thuộc các kiểu dữ liệu khác nhau.

d)

D. Chuỗi kí tự bao gồm các phần tử có

cùng kiểu dữ liệu.

2.

Câu 2. Phần tử nào dưới đây là phần tử đầu tiên trong mảng a có n phần tử?

a)

A. a[1]

b)

B. [-1]

c)

C. a[0]

d)

D. a[n]

3.

Câu 3. Phần tử nào dưới đây là phần tử cuối cùng trong mảng a có n phần tử?

a)

a[1]

b)

a[-1]

c)

a[0]

d)

a[n]

4.

Câu 4. Phần tử a[-4] trong mảng a có 4 phần tử là:

a)

a[0]

b)

a[-1]

c)

a[1]

d)

Không có phần tử a[-4].

5.

Câu 5. Phần tử a[-5] trong mảng a có 4 phần tử là:

a)

a[1]

b)

a[-1]

c)

a[0]

d)

Không có phần tử a[-5].

6.

Câu 6. Lệnh nào sau đây sẽ tạo mảng a là một dãy các số nguyên 3, 1, 6, 2

a)

A. a = array([3,1,6,2])

b)

B. a = array('i', [3,1,6,2])

c)

C. a = {3,1,6,2}

d)

D. a = array(3,1,6,2)

7.

Câu 7. Phần tử nào là phần tử ở hàng thứ 1, cột thứ 2 của mảng hai chiều a?

a)

A. a[1,2]

b)

B. a[1][2]

c)

C. a[0][1]

d)

D. a[0,1]

8.

Câu 8. Lệnh nào sau đây là lệnh tạo mảng hai chiều a?

a)

A. a = {[1,2,3], [4,5,6]}

b)

B. a = {{1,2,3}, {4,5,6}}

c)

C. a = [[1,2,3], {4,5,6}]

d)

D. a = [array('i', [1,2,3]), array('i', [4,5,6])]

9.

Câu 9. Chương trình dưới đây sẽ in ra kết quả của mảng a và mảng b là:

a = [1,2,3]

b = a

a[0] = 5

print(a)

print(b)

a)

A. a = [5,2,3] và b = [1,2,3]

b)

B. a = [1,2,3] và b = [5,2,3]

c)

C. a = [5,2,3] và b = [5,2,3]

d)

D. a = [1,2,3] và b = [1,2,3]

10.

Câu 10. Sau khi thực hiện đoạn mã dưới đây, mảng a và mảng b nhận kết quả nào?

Python

a = [1,2,3]

b = a

a = [4,5,6]

a)

A. a = [4,5,6] và b = [4,5,6]

b)

B. a = [4,5,6] và b = [1,2,3]

c)

C. a = [1,2,3] và b = [4,5,6]

d)

D. a = [4,5,6] và b = [1,2,3]

11.

Câu 11. Sau khi thực hiện đoạn mã dưới đây, mảng b là kết quả nào sau đây?

a = [3,4,6,2,7]

b = a[0:]

a)

A. b = [3,4,6,2,7]

b)

B. b = [3]

c)

C. b = [3,4]

d)

D. b = []

12.

Câu 12. Sau khi thực hiện đoạn mã dưới đây, mảng b là kết quả nào sau đây?

a = [3,4,6,2,7]

b = a[2:1]

a)

A. b = [6]

b)

B. b = [6,2]

c)

C. b = [2]

d)

D. b = []

13.

Câu 13. Sau khi thực hiện đoạn mã dưới đây, mảng b là kết quả nào sau đây?

a = [3,4,6,2,7]

b = a[:]

a)

A. b = [3,4,6,2,7]

b)

B. b = [3]

c)

C. b = [7]

d)

D. b = []

14.

Câu 14. Trong thuật toán "Sắp xếp Chèn", xét dãy con a[0]...a[i-1] có thứ tự tăng dần. Cần

chèn a[i] vào dãy con này sao cho dãy mới vẫn tăng dần, phải thực hiện công việc nào?

a)

A. a[i] được chèn vào trước a[0].

b)

B. a[i] được chèn vào chính giữa dãy con.

c)

C. a[i] được chèn vào ngay sau a[j] với a[j]

vừa nhỏ hơn hoặc bằng a[i].

d)

D. a[i] được chèn vào vị trí bất kì.

15.

Câu 15. Trong thuật toán "Sắp xếp Chèn", xét dãy con a[0]...a[i-1] đang tăng dần, phần tử

chèn là a[i]. Đoạn mã nào sau đây là đúng?

a)

b)

c)

d)

16.

Câu 16. Trong thuật toán "Sắp xếp Nổi bọt" tăng dần, đoạn mã nào sau đây là đúng?

a)

A. if a[j] > a[j+1]:

a[j], a[j+1] = a[j+1], a[j]

b)

B. if a[j] < a[j+1]:

a[j] = a[j+1]

c)

C. if a[j] > a[j+1]:

a[j], a[j-1] = a[j-1], a[j]

d)

D. if a[j] < a[j+1]:

a[j], a[j-1] = a[j-1], a[j]

17.

Câu 17. Cho mảng a = [4,1,6,3,2,9,7,5]. Theo thuật toán "Sắp xếp Chèn", sau ba bước lặp

thì mảng a là:

a)

A. a = [1,4,6,3,2,9,7,5]

b)

B. a = [1,2,6,3,4,9,7,5]

c)

C. a = [1,3,4,6,2,9,7,5]

d)

D. a = [1,2,2,3,6,9,7,5]

18.

Câu 18. Cho mảng a = [4,1,6,3,2,9,7,5]. Theo thuật toán "Sắp xếp Chọn", sau ba bước lặp

thì mảng a là:

a)

A. a = [1,4,6,3,2,9,7,5]

b)

B. a = [1,2,3,6,4,9,7,5]

c)

C. a = [1,2,3,4,6,9,7,5]

d)

D. a = [1,2,3,4,5,6,7,9]

19.

Câu 19. Cho mảng a = [4,1,6,3,2,9,7,5]. Theo thuật toán "Sắp xếp Nổi bọt", sau ba bước

lặp thì mảng a là:

a)

A. a = [1,2,3,4,5,6,7,9]

b)

B. a = [1,4,3,2,6,7,5,9]

c)

C. a = [1,2,3,4,6,9,7,5]

d)

D. a = [1,2,3,4,5,7,6,9]

20.

Câu 20. Cho mảng a = [4,6,9,3,7,1,2,5]. Theo thuật toán "Sắp xếp Chèn", sau bao nhiêu

bước lặp thì mảng a = [3,4,6,7,9,1,2,5]?

a)

A. 1

b)

B. 2

c)

C. 3

d)

D. 4

21.

Câu 21. Cho mảng a = [4,6,9,3,7,1,2,5]. Theo thuật toán "Sắp xếp Chọn", sau bao nhiêu

bước lặp thì mảng a = [1,2,3,9,7,4,6,5]?

a)

A. 1

b)

B. 2

c)

C. 3

d)

D. 4

22.

Câu 22. Cho mảng a = [4,6,9,3,7,1,2,5]. Theo thuật toán "Sắp xếp Nổi bọt", sau bao nhiêu

bước lặp thì mảng a = [4,3,6,1,2,5,7,9]?

a)

A. 1

b)

B. 2

c)

C. 3

d)

D. 4

23.

Câu 23. Khi sắp xếp mảng a có n phần tử, trường hợp tốt nhất của thuật toán "Sắp xếp

Chèn" là:

a)

A. Mảng a có ít phần tử.

b)

B. Mảng a có thứ tự tăng dần (không giảm).

c)

C. Mảng a có thứ tự giảm dần (không

tăng).

d)

D. Mảng a có thứ tự bất kì.

24.

Câu 24. Khi sắp xếp mảng a có n phần tử, trường hợp xấu nhất của thuật toán "Sắp xếp

Chèn" là:

a)

A. Mảng a có nhiều phần tử.

b)

B. Mảng a có thứ tự tăng dần (không giảm).

c)

C. Mảng a có thứ tự giảm dần (không

tăng).

d)

D. Mảng a có thứ tự bất kì.

25.

Câu 25. Cho mảng a = [1,3,4,5,6,7,9] tăng dần. "Tìm kiếm nhị phân" tìm thấy k = 3 sau bao

nhiêu bước lặp?

a)

A. 1 bước lặp.

b)

B. 2 bước lặp.

c)

C. 3 bước lặp.

d)

D. 4 bước lặp.

26.

Câu 26. Cho mảng a = [1,3,4,5,6,7,9] tăng dần. "Tìm kiếm nhị phân" không tìm thấy k = 2

sau bao nhiêu bước lặp?

a)

A. 1 bước lặp.

b)

B. 2 bước lặp.

c)

C. 3 bước lặp.

d)

D. 4 bước lặp.

27.

Câu 27. Cho mảng a = [1,3,4,5,6,7,9]. "Tìm kiếm nhị phân" sẽ so sánh giá trị k = 3 với các

số nào?

a)

A. 5, 3.

b)

B. 5, 3.

c)

C. 5, 4, 3.

d)

D. 5, 1, 3.

28.

Câu 28. Cho mảng a = [1,3,4,5,6,7,9]. "Tìm kiếm nhị phân" sẽ so sánh giá trị k = 20 với

các số nào?

a)

A. 6, 7, 9.

b)

B. 5, 6, 7.

c)

C. 5, 6, 7, 9.

d)

D. 5, 7, 9.

29.

Câu 29. Cho mảng a = [1,3,6,6,6,6,7,9]. "Tìm kiếm nhị phân" sẽ tìm thấy k = 6 tại phần tử

nào?

a)

A. a[2]

b)

B. a[3]

c)

C. a[4]

d)

D. a[5]

30.

Câu 30. Độ phức tạp thời gian trong trường hợp xấu nhất của "Sắp xếp Chèn" là:

a)

A. T(n) = O(n)

b)

B. T(n) = O(n^2)

c)

C. T(n) = O(1)

d)

D. T(n) = O(nlogn)

31.

Câu 31. Độ phức tạp thời gian trong trường hợp tốt nhất của "Sắp xếp Chèn" là:

a)

A. T(n) = O(n)

b)

B. T(n) = O(n^2)

c)

C. T(n) = O(n^3)

d)

D. T(n) = O(nlogn)

32.

Câu 32. Độ phức tạp thời gian của thuật toán "Sắp xếp Chọn" là:

a)

A. T(n) = O(n^2)

b)

B. T(n) = O(n)

c)

C. T(n) = O(n!)

d)

D. T(n) = O(nlogn)

33.

Câu 33. Độ phức tạp thời gian trong trường hợp xấu nhất của "Sắp xếp Nổi bọt" là:

a)

A. T(n) = O(n)

b)

B. T(n) = O(1)

c)

C. T(n) = O(n^2)

d)

D. T(n) = O(nlogn)

34.

Câu 34. Độ phức tạp thời gian của thuật toán "Tìm kiếm nhị phân" là:

a)

A. T(n) = O(n)

b)

B. T(n) = O(n^2)

c)

C. T(n) = O(nlogn)

d)

D. T(n) = O(log2n)

35.

Câu 35. Độ phức tạp thời gian trong trường hợp xấu nhất của "Tìm kiếm tuần tự" là:

a)

A. T(n) = O(n)

b)

B. T(n) = O(n^2)

c)

C. T(n) = O(nlog2n)

d)

D. T(n) = O(log2 n)

36.

Câu 36. "Làm mịn dần từng bước" để phát triển một mô đun là:

a)

A. Kĩ thuật "Chia để trị".

b)

B. Phương pháp chi tiết hoá dẫn các bước

giải quyết của mô đun.

c)

C. Phương pháp tìm kiếm tuần tự.

d)

D. Phương pháp sắp xếp.

37.

Câu 37. Mục tiêu của "Làm mịn dần từng bước" là:

a)

A. Tối ưu hoá cách giải quyết vấn đề/bài toán.

b)

B. Thiết kế các hình ảnh trên một trang web.

c)

C. Phân chia cách giải quyết vấn đề thành các

bước và chi tiết hoá dần.

d)

D. Tìm ra cách giải quyết vấn đề/bài toán.

38.

Câu 38. Kết quả của quá trình "Làm mịn dần từng bước" là:

a)

A. Giảm độ phức tạp thời gian.

b)

B. Thuật toán được tối ưu.

c)

C. Phân chia cách giải quyết bài toán.

d)

D. Thuật toán hoàn chỉnh (các hành động

cụ thể).

39.

Câu 39. "Làm mịn dần từng bước" là kĩ thuật nào?

a)

A. Chia để trị.

b)

B. Đệ quy.

c)

C. Duyệt quay lui.

d)

D. Thiết kế từ trên xuống.

40.

Câu 41. Đáp án chương trình sau:

x = 7

y = 2

z = x 2 - y*2

print(z)

a)

A. 4

b)

B. 6

c)

C. 10

d)

D. 12

41.

Câu 42. Đáp án chương trình sau:

a = 17

b = 4

print(a // b, a % b)

a)

A. 4 1

b)

B. 4 2

c)

C. 5 1

d)

D. 5 2

42.

Câu 43. Đáp án chương trình sau:

x = 3

y = x

x = x + 2

y = y - 1

print(x, y)

a)

A. 3 1

b)

B. 5 2

c)

C. 5 3

d)

D. 3 3

43.

Câu 44. Đáp án chương trình sau nếu người dùng nhập vào 8:

x = int(input())

if x > 0:

if x % 2 == 0:

print("A")

else:

print("B")

else:

print("C")

a)

A. A

b)

B. B

c)

C. C

d)

D. Không có gì

44.
a)

A. 5

b)

B. 2

c)

C. 3

d)

D. 12

45.
a)

A. 6

b)

B. 9

c)

C. 12

d)

D. 15

46.
a)

A. 3

b)

B. 6

c)

C. 9

d)

D. 10

47.

Câu 48. Đáp án chương trình sau:

string = "i am coder"

print(string.split()[2])

a)

A. i am

b)

B. a

c)

C. am

d)

D. coder

48.

Câu 49. Đáp án chương trình sau:

a)

A. 2

b)

B. 4

c)

C. 6

d)

D. 24

49.

Câu 50. Đáp án chương trình sau:

A = [2, 4, 6, 8]

print(A[1] + A[-1])

a)

A. 6

b)

B. 8

c)

C. 10

d)

D. 12