wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Ôn tập HK2

Total questions: 95

Worksheet time: 48mins

Name
Class
Date
1.

Đưa dữ liệu ra màn hình dùng thủ tục nào?

a)

print()

b)

input()

c)

type()

d)

abs()

2.

Câu lệnh nào dùng để đưa dữ liệu từ bàn phím vào?

a)

print()

b)

input()

c)

nhap()

d)

enter()

3.

Lệnh nào dùng để nhận biết kiểu dữ liệu của biến trong python?

a)

type()

b)

int()

c)

size()

d)

abs()

4.

Kết quả của dòng lệnh sau

>>x=6.7

>>type(x)

a)

int

b)

float

c)

string

d)

double

5.

Viết chương trình nhập vào 4 số và tính tổng của chúng. Các dòng lệnh số mấy bị sai?

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

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

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

d = input(“Nhập số d”)

print(“Tổng là: ”, a+b+c+d)

a)

Dòng 1, 2

b)

Dòng 2, 4

c)

Dòng 3, 5

d)

Dòng 4

6.

Xác định kiểu của biểu thức sau?

“34 + 28 – 45”

a)

int

b)

float

c)

bool

d)

str

7.

Phát biểu nào sau đây là sai khi nói về biểu thức lôgic?

a)

Biểu thức lôgic là biểu thức chỉ nhận giá trị True hoặc False.

b)

Giá trị của biểu thức lôgic thuộc kiểu bool

c)

Ngoài hai giá trị True, False biểu thức lôgic nhận giá trị undefined

d)

Các phép toán trên biểu thức lôgic là and, or và not

8.

Biểu diễn nào sau đây là sai trong Python?

a)

b*b>a*c, a*(1-a)+(a-b)>=0

b)

(a-b)>c-d, (a-b)<>b-a, 12*a>5a

c)

(a-b)**0.5>x, 1/x-y>=2*x, 15*a>5

d)

(a-b)>c-d, 1//x-y>=2*x, b*b>a*c

9.

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

x=2021

print((x%4==0 and x%100!=0) or x%400==0)

a)

55

b)

True

c)

5

d)

False

10.

Cho x = True, y = False. Cho biết giá trị của biểu thức sau:

not((x or y ) and x)

a)

True

b)

False

c)

x

d)

1

11.

Giá trị của hai biểu thức sau là True hay False?

50%3==1, 34//5==6

a)

True, True

b)

False, False

c)

True, False

d)

False, True

12.

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

a)

Sau <điều kiện> cần có dấu “:”

b)

Khối lệnh tiếp theo không bắt buộc lùi vào 1 tab và thẳng hàng

c)

Khi thực hiện lệnh, Python sẽ kiểm tra <điều kiện> nếu đúng thì thực hiện <khối lệnh>, ngược lại thì bỏ qua chuyến sang lệnh tiếp theo.

d)

Có phát biểu chưa đúng trong ba phát biểu trên.

13.

Tìm giá trị m và n thoả mãn (m+4)%5==0 và n*2//3=5

a)

m = 1, n = 8

b)

m = 2, n = 9

c)

m = 3, n = 10

d)

m = 0, n = 7

14.

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

x = 5

y = 6

if x > y:

print('Max:',x)

else:

print(‘Max: ’, y)

a)

Max: x

b)

Max: y

c)

Max: 5

d)

Max: 6

15.

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

x=8

y=9

if x>y:

print('x lớn hơn y')

elif x==y:

print('x bằng y')

else:

print('x nhỏ hơn y')

a)

x lớn hơn y

b)

x bằng y

c)

x nhỏ hơn y

d)

Chương trình bị lỗi

16.

Trong câu lệnh rẽ nhánh dạng thiếu <khối lệnh> được thực hiện khi nào?

a)

Điều kiện sai

b)

Điều kiện đúng

c)

Điều kiện bằng 0

d)

Điều kiện khác 0

17.

Năm nhuận là năm n chia hết cho 400 hoặc n chia hết cho 4 đồng thời không chia hết cho 100. Biểu thức biểu diễn kiểm tra năm nhuận là:

a)

n%400 == 0 or (n%4 == 0 and n%100 != 0)

b)

n%4 == 100 or n%4 == 0 and n%100 != 0

c)

n%400 != 0 or (n%4 == 0 and n%100 != 0)

d)

n%4 == 100 or (n%4 == 0 and n%100 != 0)

18.

Kết quả của lệnh print(int(4.5679)) là:

a)

4.5

b)

4.6

c)

4

d)

5

19.

Biến chạy trong vòng lặp for i in range(<giá trị cuối>) tăng lên mấy đơn vị sau mỗi lần lặp?

a)

1

b)

2

c)

0

d)

Tất cả đều sai

20.

Trong Python, câu lệnh nào dưới đây được viết đúng?

a)

for i in range(10): print("A")

b)

for i in range(10): prin("A")

c)

for i in range(10): print(A)

d)

for i in range(10) print("A")

21.

Trong câu lệnh lặp:

j=0

for j in range(10):

j = j + 2

print(j)

Khi kết thúc câu lệnh trên, câu lệnh print(j) được thực hiện bao nhiêu lần?

a)

1 lần

b)

10 lần

c)

5 lần

d)

Không thực hiện

22.

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

j = 0

for i in range(5):

j = j + i

print(j)

Sau khi thực hiện chương trình giá trị của biến j bằng bao nhiêu?

a)

10

b)

12

c)

15

d)

14

23.

Xác định số vòng lặp cho bài toán: tính tổng các số nguyên từ 1 đến 100?

a)

100

b)

1

c)

99

d)

Tất cả đều sai

24.

Đoạn chương trình sau giải bài toán nào?

t = 0

for i in range(1, 101):

if i%3==0 and i%5==0:

t = t + i

print(t)

a)

Tính tổng các số chia hết cho 3 và 5 trong phạm vi từ 1 đến 100.

b)

Tính tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ 1 đến 100.

c)

Tính tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ 1 đến 101.

d)

Tính tổng các số chia hết cho 3 và 5 trong phạm vi từ 1 đến 101.

25.

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

s = 0

for i in range(3):

s = s+2*i

print(s)

a)

6

b)

8

c)

10

d)

12

26.

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

for i in range(10):

if i%2==0:

print(i)

Trên màn hình i có các giá trị là:

a)

1,3,5,7,9

b)

2,4,6,8,10

c)

0,1,2,3,4,5,6,7,8,9

d)

0,2,4,6,8

27.

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

s=1

for i in range(1,6);

s=s*i

print(s)

Sau khi thực hiện xong, kết quả s bằng?

a)

15

b)

0

c)

120

d)

Kết quả khác

28.

Trong các phát biểu sau, phát biểu nào chưa chính xác?

a)

While là lệnh lặp với số lần không biết trước.

b)

For là lệnh lặp với số lần xác định trước.

c)

Khối lệnh lặp while được thực hiện cho đến khi <điều kiện> = False.

d)

Số lần lặp của lệnh lặp for luôn được xác định bởi vùng giá trị của lệnh range().

29.

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

Sau khi đoạn chương trình trên được thực hiện, giá trị của Tong bằng bao nhiêu:

a)

9

b)

10

c)

11

d)

12

30.

Cho biết kết quả của đoạn chương trình dưới đây:

a = 10

while a < 11:

print(a)

a)

Trên màn hình xuất hiện một số 10.

b)

Trên màn hình xuất hiện 10 chữ a.

c)

Trên màn hình xuất hiện một số 11.

d)

Chương trình bị lặp vô tận.

31.

Câu lệnh đã cho giải bài toán nào?

a)

Tìm UCLN của M và N

b)

Tìm BCNN của M và N

c)

Tìm hiệu nhỏ nhất của M và N

d)

Tìm hiệu lớn nhất của M và N

32.

Trong các phát biểu sau, phát biểu nào sai?

a)

Có ba cấu trúc lập trình cơ bản của các ngôn ngữ lập trình.

b)

Cấu trúc tuần tự gồm các khối lệnh được thực hiện theo trình tự từ trên xuống dưới.

c)

Khối lệnh chỉ được thực hiện tuỳ thuộc điều kiện nào đó được thể hiện bằng câu lệnh for, while.

33.

Mọi quá trình tính toán đều có thể mô tả và thực hiện dựa trên cấu trúc cơ bản là

a)

Cấu trúc tuần tự.

b)

Cấu trúc rẽ nhánh.

c)

Cấu trúc lặp.

d)

Cả ba cấu trúc.

34.

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

x=8

y=2

while y<x:

x=x-2:

print(x,end=" ")

a)

8, 6, 4, 2.

b)

8, 6, 4.

c)

6, 4, 2.

d)

8, 6, 4, 2, 0.

35.

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

x=1

while x>0:

x=int(input("Thu nhập của hộ tiếp theo: "))

Khi nào vòng lặp kết thúc?

a)

Khi nhập giá trị của x nhỏ hơn hoặc bằng 0

b)

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

c)

Kết thúc vòng lặp while 1 lần

d)

Khi nhập xong giá trị của x

36.

Kết quả trong đoạn lệnh sau:

x=1

while x<=5:

print("python")

x=x+1

a)

5 từ python.

b)

4 từ python.

c)

3 từ python.

d)

Không có kết quả.

37.

Chọn đáp án đúng nhất:

i=0; x=0

while i<10:

if i%2==0:

x=x+1

i=i+1

print(x)

a)

2

b)

3

c)

4

d)

5

38.

Tính tổng S = 1 + 2 + 3 + 4 +… + n + … cho đến khi S>10000. Điều kiện nào sau đây cho vòng lặp while là đúng

a)

while S >= 10000:

b)

while S < 10000:

c)

while S <= 10000:

d)

while S >10000:

39.

Ý nghĩa của đoạn chương trình là gì?

a)

Tính tổng S=13+14+...+13+N+... S=\frac{1}{3}+\frac{1}{4}+...+\frac{1}{3+N}+...\ cho đến khi

13+N<0.1\frac{1}{3+N}<0.1

b)

Tính tổng S=13+14+...+13+N+... S=\frac{1}{3}+\frac{1}{4}+...+\frac{1}{3+N}+...\ cho đến khi

13+N0.1\frac{1}{3+N}\ge0.1

c)

Tính tổng S=1+12+13+...+1N+...S=1+\frac{1}{2}+\frac{1}{3}+...+\frac{1}{N}+... cho đến khi

13+N>0.1\frac{1}{3+N}>0.1

d)

Tính tổng S=1+12+13+...+13+N+...S=1+\frac{1}{2}+\frac{1}{3}+...+\frac{1}{3+N}+... cho đến khi

13+N<0.1\frac{1}{3+N}<0.1

40.

Chỉ số danh sách bắt đầu từ mấy?

a)

1

b)

2

c)

0

d)

-1

41.

Truy cập đến từng phần tử của danh sách bằng cách nào?

a)

<danh sách>.[chỉ số]

b)

<danh sách>[chỉ số]

c)

[chỉ số].<danh sách>

d)

[chỉ số]<danh sách>

42.

len() là lệnh dùng để tính gì?

a)

Thêm phần tử vào danh sách

b)

Xóa phần tử danh sách

c)

Tính độ dài danh sách

d)

Chèn phần tử vào danh sách

43.

Lệnh nào để duyệt từng phần tử của danh sách?

a)

for

b)

for kết hợp với lệnh range()

c)

while – for

d)

while kết hợp với lệnh range().

44.

Phương thức nào sau đây dùng để thêm phần tử vào danh sách trong python?

a)

abs()

b)

link()

c)

append()

d)

add()

45.

Danh sách A sẽ như thế nào sau các lệnh sau?

>>> A = [2, 3, 5, 6]

>>> A. append(4)

>>> del (A[2])

a)

2, 3, 4, 5, 6, 4

b)

2, 3, 4, 5, 6

c)

2, 4, 5, 6

d)

2, 3, 6, 4

46.
a)

5

b)

6

c)

7

d)

8

47.

Toán tử nào dùng để kiểm tra một giá trị có nằm trong danh sách không?

a)

in

b)

int

c)

range

d)

append

48.

Ngoài việc kết hợp lệnh for và range để duyệt phần tử trong danh sách, có thể sử dụng câu lệnh nào khác?

a)

in

b)

while

c)

in range

d)

int

49.

Lệnh nào sau đây xoá toàn bộ danh sách?

a)

clear()

b)

exit()

c)

remove()

d)

del()

50.
a)

1 2 3 4 5 6

b)

1 2 3 4 5 6 5

c)

1 2 3 4 5

d)

2 3 4 5 6 5

51.

Giả sử A = [‘a’, ‘b’, ‘c’, ‘d’, 2, 3, 4]. Các biểu thức sau trả về giá trị đúng hay sai?

6 in A, 'a' in A

a)

True, True

b)

True, False

c)

False, True

d)

False, False

52.

Sau khi thực hiện các câu lệnh sau, mảng A như thế nào?

>>> A = [1, 2, 3, 4, 5]

>>> A. remove(2)

>>> print(A)

a)

[1, 2, 3, 4]

b)

[2, 3, 4, 5]

c)

[1, 2, 4, 5]

d)

[1, 3, 4, 5]

53.

Kết quả khi thực hiện chương trình sau?

>>> A = [1, 2, 3, 5]

>>> A.insert(2, 4)

>>> print(A)

a)

[1, 2, 3, 4]

b)

[1, 2, 4, 3, 5]

c)

[1, 2, 3, 4, 5]

d)

[1, 2, 4, 5]

54.

Xâu “1234%^^%TFRESDRG” có độ dài bằng bao nhiêu?

a)

15

b)

16

c)

17

d)

18

55.

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

a)

Có thể truy cập từng kí tự của xâu thông qua chỉ số.

b)

Chỉ số bắt đầu từ 0.

c)

Có thể thay đổi từng kí tự của một xâu.

d)

Python không có kiểu dữ liệu kí tự.

56.

Chương trình sau cho kết quả là gì?

name = "Codelearn"

print(name[0])

a)

'C'

b)

'c'

c)

'o'

d)

Câu lệnh bị lỗi

57.

Kết quả của chương trình sau là bao nhiêu?

>>> s = “abcdefg”

>>> print(s[2])

a)

'a'

b)

'b'

c)

'c'

d)

'd'

58.
a)

True, False

b)

True, True

c)

False, True

d)

False, False

59.

Sử dụng lệnh nào để tìm vị trí của một xâu con trong xâu khác không?

a)

test()

b)

in()

c)

find()

d)

split()

60.

Lệnh nào sau đây dùng để tách xâu:

a)

split()

b)

join()

c)

remove()

d)

copy()

61.

Lệnh nào sau đây dùng để nối các phần tử của danh sách thành một xâu:

a)

split()

b)

join()

c)

remove()

d)

copy()

62.

Phát biểu nào chưa chính xác khi nói về toán tử in?

a)

Biểu thức kiểm tra xâu 1 nằm trong xâu 2 là: <xâu 1> in <xâu 2>

b)

Toán tử in trả về giá trị True nếu xâu 1 nằm trong xâu 2.

c)

Toán tử in trả về giá trị False nếu xâu 1 không nằm trong xâu 2.

d)

Toán tử in là toán tử duy nhất giải quyết được bài toán kiểm tra xâu có nằm trong xâu không.

63.

Điền đáp án đúng vào chỗ chấm (…) hoàn thành phát biểu đúng sau:

“Python có các … để xử lí xâu là … dùng để tách xâu thành một danh sách và lệnh join() dùng để … các xâu thành một xâu”.

a)

câu lệnh, split(), nối

b)

câu lệnh đặc biệt, split(), tách xâu

c)

câu lệnh đặc biệt, copy(), nối danh sách

d)

câu lệnh đặc biệt, split(), nối danh sách.

64.
a)

hello world

b)

Hello World

c)

Hello word

d)

Helloworld

65.
a)

2, 6

b)

3, 3

c)

3, 7

d)

2, 2

66.

Trong ngôn ngữ lập trình Python, hàm có phải là thủ tục hay không? Mệnh đề nào dưới đây mô tả đúng quan hệ giữa hàm và thủ tục?

a)

Hàm và thủ tục là hai khái niệm hoàn toàn khác nhau.

b)

Hàm là thủ tục nhưng thủ tục có thể không phải là hàm.

c)

Trong Python, hàm và thủ tục là hai khái niệm đồng nhất.

d)

Thủ tục là hàm nhưng hàm có thể không là thủ tục.

67.

Trong định nghĩa của hàm có thể có bao nhiêu từ khóa return?

a)

1

b)

2

c)

5

d)

Không hạn chế

68.

Hàm nào dưới đây là hàm không trả lại giá trị?

a)

print()

b)

float()

c)

len()

d)

divmod()

69.

Mệnh đề nào dưới đây mô tả đúng về hàm tự định nghĩa không trả lại giá trị?

a)

Trong mô tả hàm không có từ khóa return.

b)

Trong mô tả hàm chỉ có một từ khóa return.

c)

Trong mô tả hàm phải có tối thiểu hai từ khóa return.

d)

Trong mô tả hàm hoặc không có return hoặc có return nhưng không có giá trị sau từ khóa return.

70.

Chọn phát biểu sai

a)

Trong Python có thể tự tạo hàm trùng tên với một hàm có sẵn.

b)

Trong Python có thể định nghĩa hàm với tên trùng với từ khóa.

c)

Hàm có thể có hoặc không có tham số.

d)

Hàm có thể trả lại giá trị hoặc không trả lại giá trị.

71.

Cú pháp câu lệnh gọi hàm trong Python có dạng chung nào sau đây?

a)

<tên hàm>(<danh sách tham số>)

b)

<tên hàm> = (<danh sách tham số>)

c)

<tên hàm> . (<danh sách tham số>)

d)

<tên hàm> : (<danh sách tham số>)

72.

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

a)

Khối lệnh mô tả hàm được viết sau dấu “:” và không cần viết lùi vào

b)

Hàm trong Python được định nghĩa bằng từ khoá def, theo sau là tên hàm

c)

Hàm có thể có hoặc không có tham số

d)

Khối lệnh mô tả hàm được viết sau dấu “:” và viết lùi vào, thẳng hàng

73.

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

a)

Lệnh x = int( ’52 + 25’) chuyển xâu ’52 + 25’ thành số nguyên 77

b)

Lệnh print(“Thời khoá biểu”) thực hiện việc in xâu kí tự “Thời khoá biểu” trong dấu ngoặc ra màn hình

c)

Lệnh x = int( ‘52’) chuyển xâu ‘52’ thành số nguyên 52

d)

Lệnh type(y) trả lại kiểu dữ liệu của biến y

74.

Xét đoạn chương trình bên:

Khi gọi hàm meeting() và nhập Tin học 10 thì kết quả là?

a)

Xin chào ten

b)

Xin chào, Tin học 10

c)

Tin học 10

d)

Xin chào Tin học 10

75.

Hàm tự định nghĩa trong Python có thể có bao nhiêu tham số?

a)

0

b)

1

c)

2

d)

Không hạn chế

76.

Khi gọi hàm, dữ liệu được truyền vào hàm được gọi là gì?

a)

Tham số

b)

Hiệu số

c)

Đối số

d)

Hàm số

77.

Giả sử chúng ta thực hiện các lệnh sau:

m=10

n=1

print(func(n,m))

Kết quả sẽ in ra số nào?

a)

31

b)

13

c)

10

d)

11

78.

Đoạn chương trình bên sẽ in ra số nào?

a)

20

b)

10

c)

18

d)

30

79.

Viết chương trình thực hiện: Nhập hai số tự nhiên từ bàn phím, hai số cách nhau bởi dấu cách. Tính và in ra tổng của các số này. Chương trình có thể như hình bên:

Khi chạy chương trình nếu nhập 5 6 thì kết quả là:

a)

56

b)

65

c)

11

d)

Báo lỗi

80.

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

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 bằng 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 khác với số tham số trong khai báo của hàm.

81.

Xét hai đoạn chương trình bên:

Phát biểu nào đúng

a)

a, b, c là đối số và x, y là tham số

b)

a, b, c là tham số và x, y là đối số

c)

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

d)

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

82.
a)

9

b)

8

c)

10

d)

11

83.

Trong Python biến được khai báo và sử dụng bên trong một hàm được gọi là biến gì?

a)

Biến cơ bản

b)

Biến toàn cục

c)

Biến cục bộ

d)

Biến riêng

84.

Nếu biến bên ngoài hàm muốn có tác dụng bên trong hàm ta dùng từ khoá nào để khai báo?

a)

global

b)

def

c)

len

d)

input

85.

Viết hàm với đầu vào là danh sách A chứa các số và số thực x. Hàm trả lại một danh sách kết quả B từ danh sách A bằng cách chỉ giữ lại các phần tử lớn hơn hoặc bằng x. Đoạn chương trình nào sau đây đúng?

a)
b)
c)
d)
86.

Chương trình bên có kết quả gì?

a)

4

b)

10

c)

13

d)

3

87.

Xác định loại lỗi của câu lệnh sau:

>>>A = list(12)

a)

Lỗi cú pháp

b)

Lỗi ngoại lệ

c)

Lỗi khác

d)

Không có lỗi

88.

Lệnh sau có lỗi không? Nếu có thì lỗi thuộc loại nào?

123ab={1,2,3]

print(123ab)

a)

Lỗi cú pháp

b)

Lỗi ngoại lệ

c)

Lỗi khác

d)

Không có lỗi

89.

Lỗi ngoại lệ trong Python là lỗi gì?

a)

Lỗi khi viết một câu lệnh sai cú pháp của ngôn ngữ lập trình.

b)

Lỗi khi truy cập một biến chưa được khai báo.

c)

Lỗi khi không thể thực hiện một lệnh nào đó của chương trình.

d)

Lỗi khi chương trình biên dịch sang tệp exe.

90.

Trong lời gọi hàm, nếu các đối số được truyền vào hàm bị thiếu thì lỗi ngoại lệ phát sinh thuộc loại nào dưới đây?

a)

SyntaxError

b)

NameError

c)

TypeError

d)

Không phát sinh lỗi ngoại lệ

91.

Các lệnh sau sẽ phát sinh lỗi ngoại lệ nào?

>>>s="abc"

>>>s[10]

a)

SyntaxError

b)

NameError

c)

TypeError

d)

IndexError

92.
a)

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

b)

1 3 5 10 0

c)

1 3 5 10

d)

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

93.

Chương trình báo lỗi SyntaxError. Đây là lỗi gì?

a)

Lỗi kiểu dữ liệu

b)

Lỗi cú pháp

c)

Lỗi liên quan đến giá trị của đối tượng

d)

Lỗi khi các dòng lệnh thụt vào không thẳng hàng hoặc không đúng vị trí

94.

Giả sử chương trình có lệnh nhập dữ liệu sau:

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

Khi chúng ta nhập 1.5 thì chương trình có lỗi ngoại lệ không? Đó là lỗi ngoại lệ nào?

a)

SyntaxError

b)

ValueError

c)

TypeError

d)

IndexError

95.

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

a)

1

b)

2

c)

3

d)

4