wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Đề Ôn Tập Lập Trình Cơ Bản - SIC

Total questions: 82

Worksheet time: 41mins

Name
Class
Date
1.

Câu 1: Chọn câu sai:

a)

_1839 = 'Đại Nam'

b)

Van_Xuan = str(544) + " Tiền Lý Nam Đế"

c)

ket_qua = round(3*int(123.456),-2)

d)

baitap#1 = "Tính diện tích tam giác"

2.

Câu 2: Kiểm tra n có chia hết cho 3 và 5. Chọn câu đúng:

a)

n%3 == 0 or n%5 == 0

b)

n%3 == 0 and n%5 == 0

c)

n%3 and n%5 == 0

d)

n % 3 = 0 and n % 5 = 0

3.

Câu 3: Chọn câu cho kết quả False:

a)

math.ceil(5.00001) == 6

b)

abs(2024) == 2024

c)

math.floor(1.99999) == 2

d)

round(1954,-1) == 1950

4.

Câu 4: Câu lệnh nào sau đây thực hiện nhập tên quốc gia từ bàn phím và lưu vào biến ten_qg?

a)

ten_qg = input('Nhập tên quốc gia:')

b)

ten_qg = int(input('Nhập tên quốc gia:'))

c)

ten_qg = float(input('Nhâp tên quốc gia:'))

d)

ten qg = input('Nhập tên quốc gia:')

5.

Câu 5: Xuất ra màn hình câu: I love Vietnam!

a)

Print('I love Vietnam!')

b)

print 'I love Vietnam!'

c)

print(I love Vietnam!)

d)

print("I love Vietnam!")

6.

Câu 6: Cho biết kết quả chương trình sau:

a)

Xích Quỷ

b)

Văn Lang

c)

Âu Lạc

d)

Khác

7.

Câu 7: Cho biết kết quả chương trình sau:

a)

Phương trình vô số nghiệm

b)

Phương trình vô nghiệm

c)

Nghiệm x = -111.39

d)

SyntaxError

8.

Câu 8: Cho biết kết quả chương trình sau:

a)

0 1 2 3 4 5 ... 2022

b)

1 2 3 4 5 6 ... 2023

c)

1 2 3 4 5 6 ... 2024

d)

0 1 2 3 4 5 ... 2024

9.

Câu 9: Cho biết kết quả chương trình sau:

a)

Đại Việt. Đại Việt.

b)

Đại Việt. Đại Việt

c)

Đại Việt. Đại Việt. Đại Việt.

d)

Đại Việt Đại Việt.

10.

Câu 10: Cho biết kết quả chương trình sau:

a)

Tổng = 10

b)

Tổng = 15

c)

Tổng t = 10

d)

10

11.

Câu 11: Trong Python. Lệnh xuất ra màn hình nào sau đây là đúng?

a)

print('20'+21)

b)

PRINT('20', 21)

c)

print('20', '21')

d)

Print(20+21)

12.

Câu 12: Xác định kiểu và giá trị của biểu thức sau:

a)

bool, True

b)

bool, true

c)

bool, False

d)

bool, false

13.

Câu 13: Câu lệnh nào sau đây được dùng để nhận thông tin nơi sinh sống của người dùng và lưu vào biến city?

a)

city = input(Enter the name of the city you live in :

b)

city = input('Enter the name of the city you live in :')

c)

input('Enter the name of the city you live in :') = city

d)

city = scanf('Enter the name of the city you live in :')

14.

Câu 14: Giá trị cuối cùng được lưu trong biến num sau khi thực hiện các câu lệnh sau đây là gì?

a)

2.0

b)

21.0

c)

20

d)

12.0

15.

Câu 15: Cho danh sách a như dưới đây, lệnh a.pop(1) sẽ trả về giá trị nào?

a)

10

b)

20

c)

30

d)

40

16.

Câu 16: Tôi muốn in ra chuỗi t đã sửa đổi thành 'My favorite thing is coding.'. Bằng cách áp dụng phương thức replace() cho chuỗi s = 'My favorite thing is singing.'. Mã thích hợp điền vào chỗ trống là gì?

a)

s.replace('singing', 'coding')

b)

replace(s('singing', 'coding'))

c)

replace('singing', 'coding')

d)

s.replace('coding', 'singing')

17.

Câu 17: Lệnh nào sau đây không phải là lệnh cắt trích xuất ra chuỗi con 'Python' từ chuỗi my_string = 'I love Python'

a)

my_string[7:]

b)

my_string[7:13]

c)

my_string[-6:]

d)

my_string[-6:-1]

18.

Câu 18: Đâu là lệnh thích hợp để tạo hàm ẩn danh có hai đối số là 100 và 200 và trả về giá trị chênh lệch giữa hai đối số này?

a)

(lambda x, y: x - y)(100, 200)

b)

(lambda x, y: x + y)(100, 200)

c)

(lambda x: x)(100 - 200)

d)

lambda x, y: x - y(100, 200)

19.

Câu 19: Cho biến a là một nhóm gồm 3 số nguyên. Nếu muốn kiểm tra kiểu dữ liệu của a thì ta sử dụng hàm gì?

a)

func()

b)

id()

c)

type()

d)

list()

20.

Câu 20: Bạn Anh muốn tạo danh sách b có các phần tử [1, 4, 9] từ danh sách a có ba phần tử là [1, 2, 3]. Hãy chọn câu lệnh tích hợp để điền vào chỗ trống trong chương trình dưới đây

a)

x * 3

b)

x ** 3

c)

x ** 2

d)

x * 2

21.

Câu 21: Nếu giá của một mặt hàng trong trung tâm mua sắm từ 100$ trở lên, bạn muốn in dòng chữ 'miễn phí vận chuyển'. Biểu thức logic nào sau đây là phù hợp?

a)

price >= 100

b)

price == 100

c)

price => 100

d)

price > 100

22.

Câu 22: Cho một danh sách a trong Python với các phần tử [10, 20, 30, 40]. Ta sử dụng hàm trong thư viện random để trộn ngẫu nhiên thứ tự các phần tử trong danh sách a. Mã lệnh nào sau đây thực hiện việc đó?

a)

shuffle.random(a)

b)

choice(a)

c)

random.shuffle(a)

d)

shuffle(a)

23.

Câu 23: Cho biết giá trị của key['b'] trong từ điển dic bằng cách dự đoán kết quả của đoạn mã sau là gì?

a)

1

b)

2

c)

3

d)

4

24.

Câu 24: Cho một danh sách a trong Python với các phần tử [10, 20, 30, 40]. Mã lệnh a.index(40) sẽ trả ra giá trị nào sau đây?

a)
0
b)

1

c)

2

d)

3

25.

Câu 24: Cho một danh sách a trong Python với các phần tử [10, 20, 30, 40]. Mã lệnh a.index(40) sẽ trả ra giá trị nào sau đây?

a)

0

b)

1

c)

2

d)

3

26.

Câu 25: Kết quả của chương trình sau là gì?

a)

10 20

b)

20 10

c)

40 30

d)

0 0

27.

Câu 26: Giả sử ta có hàm để tìm số lớn nhất trong 2 số a và b như sau: Ta cần gọi hàm max trên như thế nào để tìm được số lớn nhất trong 3 số a, b, c?

a)

max(max(a,b),c);

b)

max(a,b,c);

c)

max(max(a,b), max(c));

d)

max(a ;b;c);

28.

Câu 27: Cho biết kết quả in ra của chương trình sau khi nhập a=9, b=11

a)

14

b)

30

c)

15

d)

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

29.

Câu 28: Tìm lỗi sai trong chương trình dưới đây:

a)

Sai dấu so sánh bằng trong điều kiện s='e'

b)

Không thể dùng câu lệnh if trong thủ tục

c)

Thừa dấu " : " sau điều kiện s='e'

d)

kt không thể dùng làm tên của hàm

30.

Câu 29: Đầu ra của mã Python sau là gì?

a)

{'a': 4, 'b': 3, 'c': 2}

b)

{'a': 4, 'b': 2, 'c': 3}

c)

{'a': 4, 'b': 3, 'c': 4}

d)

{'a': 3, 'b': 2, 'c': 2}

31.

Câu 30: Chúng tôi muốn tạo một câu lệnh giải nén để trích dữ liệu từ cấu trúc tuple của biến t1 = (1, 2, 3, 4) sau đó gán giá trị 1 cho a, 2 cho b, 3 cho c. Đặt mã lệnh nào sau đây vào phần gạch chân để có câu lệnh đúng.

a)

t1[1,3]

b)

t1[0:3]

c)

t1[0-3]

d)

t1[0::3]

32.

Câu 31: Kết quả của chương trình dưới đây là?

a)

50.0

b)

100

c)

50

d)

102

33.

Câu 32: Cho tập hợp a gồm các số nguyên 10, 20, 30, 40 và tập hợp b gồm các số nguyên 30, 40, 50. Kết quả của phép toán a&b là gì?

a)

{30, 40}

b)

{10, 20, 30, 40, 50}

c)

{10, 20}

d)

{30, 40, 50}

34.

Câu 33: Ngăn xếp là cấu trúc dữ liệu vào sau - ra trước (LIFO - có thể liên tưởng tới chồng đĩa), trong đó các phần tử chỉ có thêm vào hoặc xoá đi từ một đầu. Trong Python, bạn có thể triển khai ngăn xếp dưới dạng danh sách. Đầu ra của đoạn mã sau sử dụng ngăn xếp danh sách là gì?

a)

0 1

b)

1 0

c)

3 4

d)

4 3

35.

Câu 34: Chia để trị là một chiến lược thiết kế thuật toán nhằm chia và xử lí một bài toán nhất định thành hai hoặc nhiều trường hợp đơn giản hơn. Giả sử có 200 đồng xu cùng kích thước, trong đó có một đồng xu có trọng lượng khác những đồng xu còn lại. Em sử dụng cân cân bằng để tìm đồng xu có trọng lượng khác bằng chiến lược chia để trị. Trong trường hợp xấu nhất, em cần phải thực hiện

a)

5

b)

7

c)

9

d)

11

36.

Hàng đợi là cấu trúc dữ liệu vào trước - ra trước (FIFO), trong đó các phần tử thêm vào ở cuối và lấy ra ở đầu. Trong Python, hàng đợi được cài đặt bằng danh sách. Hãy cho biết kết quả của đoạn chương trình sau?

a)

10 9

b)

10 8

c)

1 2

d)

2 3

37.

Tìm kiếm nhị phân là phương pháp tìm kiếm giúp giảm một nửa phạm vi tìm kiếm của danh sách được sắp xếp. Trong đoạn mã sau, giá trị đầu vào x nào thực hiện phép so sánh ít lần nhất?

a)

x = 11

b)

x = 26

c)

x = 37

d)

x = 99

38.

Các hàm fib1(), fib2() và fib4(), lần lượt là các hàm cài đặt các thuật toán khác nhau để tính số Fibonacci thứ N. Với giá trị N rất lớn (ví dụ, lớn hơn 10000), thuật toán hiệu quả nhất về thời gian trong trường hợp này là thuật toán nào?

a)

fib1()

b)

fib2()

c)

fib4()

d)

Các thuật toán giống nhau.

39.

Thuật toán sắp xếp nổi bọt (Buble Sort) thực hiện sắp xếp bằng cách so sánh hai phần tử liền kề và hoán đổi vị trí nếu thứ tự bị đảo ngược. Trong chương trình cài đặt thuật toán sắp xếp nổi bọt, nếu cho danh sách đầu vào S=[20, 30, 40, 50, 10] thì cần thực hiện bao nhiêu thao tác hoán đổi?

a)

3

b)

4

c)

5

d)

6

40.

Thuật toán nào sau đây có độ phức tạp về thời gian là O(NlogN) trong trường hợp xấu nhất?

a)

Insertion sort

b)

Quick sort

c)

Binary search

d)

Merge sort

41.

Bảng băm là cấu trúc dữ liệu lưu trữ và trích xuất dữ liệu bằng cách ánh xạ các khoá tới các giá trị bằng cách băm. Đầu ra của đoạn mã sau là gì khi bảng băm được thực hiện?

a)

['Apple']

b)

['Banana']

c)

['Tomato']

d)

['Strawberry']

42.

Trong Python, lệnh nào được sử dụng để in một giá trị ra màn hình?

a)

print()

b)

display()

c)

show()

d)

output()

43.

Đâu là cách đúng để khai báo một biến trong Python?

a)

int myVariable = 5

b)

myVariable = int(5)

c)

int myVariable = int(5)

d)

myVariable = 5

44.

Trong Python, lệnh nào dùng để kiểm tra xem một phần tử có tồn tại trong một danh sách hay không?

a)

check()

b)

contains()

c)

in

d)

exists()

45.

Trong Python, điều kiện nào dưới đây là đúng?

a)

5 < 3 and 5 < 10

b)

5 > 3 or 5 > 10

c)

5 > 3 and 5 > 10

d)

5 < 3 or 12 < 10

46.

Khi xử lý xâu kí tự, phương thức nào sau đây được sử dụng để chuyển đổi một xâu thành một danh sách các từ?

a)

split()

b)

convert()

c)

to_list()

d)

parse()

47.

Trong Python, vòng lặp nào sẽ thực thi một khối mã cho mỗi phần tử trong một danh sách?

a)

for

b)

while

c)

do-while

d)

if-else

48.

Trong Python, điều gì sẽ xảy ra khi bạn thử mở một tệp không tồn tại trong chế độ đọc ('r')?

a)

Lỗi FileNotFoundError sẽ được hiện ra.

b)

Một tệp mới sẽ được tạo ra.

c)

Một cảnh báo sẽ được hiển thị nhưng chương trình sẽ tiếp tục chạy.

d)

Chương trình sẽ dừng lại với một lỗi.

49.

Hãy chọn đoạn chương trình python thực hiện việc tính tổng các số từ 1 đến 10.

a)

b)

c)

d)

V

50.

Viết một hàm Python có tên là "square" để tính bình phương của một số được nhập từ bàn phím.

a)

b)

c)

d)

51.

Viết một đoạn mã Python để đảo ngược một chuỗi.

a)

b)

c)

d)

52.

Đâu không phải là kiểu dữ liệu trong Python

a)

Số nguyên

b)

số thực

c)

logic

d)

Văn bản Text

53.

Cho biết kết quả của đoạn chương trình sau:

a)

15 5

b)

10 5

c)

5 10

d)

15 10

54.

Đoạn chương trình sau in ra bao nhiêu dòng chữ "Sam sung Campus" ?

a)

a. 3

b)

b. 9

c)

c. 6

d)

d. 10

55.

Kết quả của đoạn chương trình sau đây là gì

a)

a. [0, 2, 4, 6, 8, 10]

b)

b. [1, 2, 3, 4, 5, 6, 7, 8, 9,10]

c)

c. [0, 2, 3, 4, 5, 6, 7, 8, 9]

d)

d. [0, 2, 4, 6, 8]

56.

Cho biết kết quả đoạn chương trình sau:

a)

a. Có lỗi

b)

b. Bằng nhau

c)

c. x lớn hơn y

d)

d. x nhỏ hơn y

57.

Chọn đáp án đúng trong các đáp án sau khi nói về hàm.

a)

a. Có hai loại hàm là hàm trả về giá trị và hàm không trả về giá trị

b)

b. Hàm lambda được định nghĩa mà không cần có tên như các hàm thông thường

c)

c. Các hàm có thể lồng nhau nhiều mức

d)

d. Hàm lambda được định nghĩa def như các hàm thông thường

58.

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

a)

a. 1 2 3 4

b)

b. 2 3 4

c)

c. 2 3 4 5

d)

d. 1 2 3 4 5

59.

Cho A là một danh sách có n phần tử, thuật toán sau có độ phức tạp thời gian là?

a)

a. O(n)

b)

b. O(nlogn)

c)

c. O(logn)

d)

d. O(

60.

Ngăn xếp là một kiểu dữ liệu đã được định nghĩa như một lớp Stack vào sau ra trước với các phương thức push(item), pop(). Cho biết kết quả đoạn chương trình sau:

a)

3 6 9 12

b)

3 6 9 12 15

c)

0 3 6 9 12

d)

0 3 6 9 12 15

61.

Đoạn chương trình sau thuộc thuật toán sắp xếp nào?

a)

Sắp xếp nổi bọt

b)

Sắp xếp chọn

c)

Sắp xếp chèn

d)

Sắp xếp nhanh

62.

Biểu thức logic m % 100 < 10 and m // 100 > 0 nhận giá trị True với giá trị nào của m dưới đây?

a)

193

b)

309

c)

391

d)

139

63.

Cho biết kết quả khi thực hiện đoạn chương trình sau:

a)

2

b)

2.5

c)

1

d)

Báo lỗi

64.

Phát biểu nào sau đây về kiểu danh sách (list) trong Python là SAI?

a)

Kiểu danh sách có thể được sử dụng làm khóa trong từ điển

b)

Có thể khởi tạo một danh sách rỗng

c)

Kiểu dữ liệu của các phần tử trong danh sách có thể khác nhau

d)

Có thể nhân danh sách với một số nguyên

65.

Cho biết kết quả khi thực hiện đoạn chương trình sau:

a)

['Phương', 'An', 'Chi', 'Dung', 'Đạt']

b)

['An', 'Phương', 'Chi', 'Dung', 'Đạt']

c)

['Phương', 'Bình', 'Chi', 'Dung', 'Đạt']

d)

Tất cả các phương án đều sai

66.

Phát biểu nào sau đây là SAI về chương trình con (hàm) trong Python?

a)

Hàm có thể được gọi bởi một hàm khác

b)

Hàm có thể được định nghĩa bên trong một hàm khác

c)

Hàm có thể trả về giá trị do lập trình viên quy định thông qua câu lệnh return

d)

Hàm có thể gọi chính nó

67.

Cho biết kết quả khi thực hiện đoạn chương trình sau:

a)

34

b)

66

c)

19

d)

Chương trình lỗi

68.

Có bao nhiêu thao tác hoán đổi đã được thực hiện trong quy trình sắp xếp nổi bọt dưới đây?

a)

6

b)

5

c)

4

d)

7

69.

Câu 67: Hàm tìm kiếm nhị phân dưới đây còn thiếu 4 câu lệnh ở các vị trí đã đánh số. Em hãy điền các câu lệnh A, B, C, D dưới đây vào các vị trí thích hợp để hoàn thành hàm này.

A.     return giua         

B.    return -1 

C.    dau = giua + 1    

D.    cuoi = giua -1

a)

     1- A; 2-C; 3-D; 4-B

b)

1-A; 2-D; 3-C, 4-B

c)

  1-B; 2-C; 3-D; 4-A

d)

1-B; 2-D; 3-C; 4-A

70.

Thuật toán nào dưới đây được thiết kế theo chiến lược chia để trị?

a)

Sắp xếp nổi bọt

b)

Sắp xếp chọn

c)

Sắp xếp chèn

d)

Sắp xếp nhanh

71.

Nhiệm vụ: Liệt kê các số nguyên tố lớn hơn 3 và nhỏ hơn 9.000.000.000. Khi cho vòng lặp chạy có điều kiện kiểm tra các số từ 3 và nhỏ hơn 9.000.000.000 với bước nhảy +2 thì kết quả thu được như thế nào với việc kiểm tra toàn bộ các số trong khoảng đó?

a)

Kết quả bị thiếu

b)

Kết quả bị lỗi

c)

Kết quả đúng và đủ

d)

Kết quả đúng, đủ, tiết kiệm vòng lặp và góp phần bảo vệ môi trường

72.

Chọn kết quả đúng:

a)

['A', 'D', 'F']

b)

['B', 'D', 'F']

c)

['B', 'C'

d)

['A', 'C', 'E', 'G']

73.

Chọn câu cho kết quả hiển thị đúng:

a)

{'Name': 'Mai', 'Age': 18, 'Weight': 45}

b)

{'Name': 'Mai', 'Age': 2, 'Weight': 45}

c)

{'Name': 'Mai', 'Age': 20, 'Weight': 45}

d)

{'Name': 'Mai', 'Age': 38, 'Weight': 45}

74.

Kết quả của chương trình sau là:

a)

[1, 4, 27, 84, 125]

b)

[1, 16, 81, 256, 625]

c)

[16, 25, 36, 49, 64]

d)

[1, 4, 9, 16, 25]

75.

Kết quả của chương trình sau là:

a)

['A', 'B']

b)

['A', 'C']

c)

['A', 'D']

d)

['C']

76.

Kết quả của chương trình sau là:

a)

[20, 40, 80]

b)

[20, 35, 55]

c)

[80, 40, 35]

d)

[40, 80, 90]

77.

Có bao nhiêu hoạt động hoán đổi đã được thực hiện trong quy trình sắp xếp sủi bọt dưới đây:

a)

4

b)

5

c)

6

d)

7

78.

Thuật toán sắp xếp trộn (Merge Sort) là điển hình cho thuật toán nào dưới đây ?

a)

Tham lam

b)

Chia để trị

c)

Vét cạn

d)

Quay lui

79.

Hàm nào dưới đây được dùng để vẽ biểu đồ phân tán trong matplotlib?

a)

plot()

b)

draw_scatter()

c)

scatter()

d)

create_plot()

80.

Cho dãy số sau: 10 11 14 32 36 43 55 57 87 97. Áp dụng phương pháp tìm kiếm nhị phân, để tìm kiếm số 97, lần phân đoạn thứ hai của dãy sẽ là:

a)

[36 97]

b)

[36 11]

c)

[36 97 11]

d)

[87 97]

81.

Câu 81: Câu lệnh nào dưới đây sẽ yêu cầu người dùng nhập một giá trị có thể là số thực hoặc số nguyên

a)

a. value = int(input("Nhập giá trị của bạn: "))

b)

b. value = float(input("Nhập giá trị của bạn: "))

c)

c. value = str(input("Nhập giá trị của bạn: "))

d)

d. value = bool(input("Nhập giá trị của bạn: "))

82.

Câu 82: Hàm nào được sử dụng để hiển thị biểu đồ trong matplotlib?

      

a)

display()

b)

  plot()

c)

  show()

d)

   exists()