ĐỀ CƯƠNG ÔN TẬP GIỮA HK2 TIN 10 NĂM HỌC 2024-2025 _ KNTT&CS BGDĐT

Web Publisher User


NỘI DUNG

Bài 24: Xâu ký tự

Bài 25: Một số lệnh làm việc với xâu ký tự

Bài 26: Hàm trong Python

Bài 27: Tham số của hàm

BÀI TẬP

I. TRẮC NGHIỆM

MỘT SỐ CÂU TRẮC NGHIỆM MINH HỌA

Câu 1. Kiểu dữ liệu nào sau đây được sử dụng để lưu trữ xâu ký tự trong Python?

A. Số nguyên (int)

B. Số thực (float)

C. Xâu (str)

D. Lôgic (bool)

 

Câu 2. Cách nào sau đây được sử dụng để tạo một xâu ký tự trong Python? Chọn đáp án sai.

A. Sử dụng dấu nháy đơn (')

B. Sử dụng dấu nháy kép (")

C. Sử dụng dấu nháy ba ("") hoặc (""" """)

D. Sử dụng dấu ngoặc vuông ([])

 

Câu 3. Điều nào sau đây là đúng về xâu ký tự trong Python?

A. Xâu ký tự có thể thay đổi được.

B. Không thể thay đổi kí tự trong xâu.

C. Độ dài của xâu ký tự bị giới hạn.

D. Xâu ký tự chỉ có thể chứa các chữ cái.

 

Câu 4. Trong Python, xâu rỗng được biểu diễn như thế nào?

A. None

B. 0

C. ""

D. " " (một dấu cách)

 

Câu 5. Cho xâu s = “Hello”, biểu thức len(s) sẽ trả về giá trị nào?

A. 4

B. 5

C. 6

D. 0

 

Câu 6. Để truy cập vào ký tự đầu tiên của xâu s = “Python”, ta sử dụng cú pháp nào?

A. s[1]

B. s[0]

C. s(0)

D. s(1)

 

Câu 7. Cho xâu s = “Tin học 10”, ký tự tại vị trí chỉ số 4 là ký tự nào?

A. 'n'

B. ' ' (dấu cách)

C. 'o'

D. 'h'

 

Câu 8. Cho đoạn mã sau:

s = "abc"

for i in range(len(s)):

    print(i, end = " ")

   

Đoạn mã trên sẽ in ra kết quả gì?

A. 0 1 2
B. 1 2 3
C. a b c
D. "abc"

Câu 9. Sau khi thực hiện các lệnh sau, biến skq sẽ có giá trị bao nhiêu?

      s = "527493"

skq = ""

for ch in s:

    if int(ch) % 2 != 0:

        skq = skq + ch

 

A. 24
B. 5793
C. "5793"
D. "24"

Câu 10. Cho xâu s = “Hello”, làm thế nào để lấy ra xâu con “Hel”?

A. s[0:2]
B. s[1:2]
C. s[1:3]
D. s[:3]

Câu 11. Kết quả của biểu thức 'a' in 'abcd' là gì?

A. True
B. False
C. 1
D. 0

Câu 12. Hàm find() trong Python được sử dụng để làm gì?

A. Thay thế một xâu con trong xâu cha.
B. Tìm vị trí đầu tiên của một xâu con trong xâu cha.
C. Xóa một xâu con khỏi xâu cha.
D. Tìm kiếm xâu con.

Câu 13. Cho xâu s = “ab cd ab”, giá trị trả về của lệnh s.find(“ab”) là bao nhiêu?

A. 0
B. 6
C. 3
D. -1

Câu 14. Để kiểm tra xem xâu “abc” có nằm trong xâu “abcdef” hay không, ta sử dụng biểu thức nào?

A. s.split("abc")
B. "abc".in(s)
C. "abc" in "abcdef"
D. s.find("abc")

Câu 15. Cho xâu s = "abc def abc”. Giá trị trả về của lệnh s.find(“abc”, 1) là bao nhiêu?

A. 0
B. 8
C. -1
D. 3

Câu 16. Lệnh nào sau đây không phải là một lệnh hợp lệ để tìm kiếm xâu con trong Python?

A. "xyz" in s
B. s.find("xyz")
C. s.join("xyz")
D. s[4:len(s)]

Câu 17. Cho đoạn code sau:

      s = "Python is easy"

print(s[:10])

 

Kết quả in ra là gì?

A. Python is e
B. Python is
C. Python is easy
D. is easy

Câu 18. Cho xâu s = “a,b,c,d”. Làm thế nào để tạo ra list ['a', 'b', 'c', 'd']?

A. list(s)
B. s.split(",")
C. s.split()
D. s.toList()

Câu 19. Cho xâu s = “Hello”. Để tìm chữ “H” ở vị trí đầu tiên, ta dùng lệnh nào?

A. s.find("H")
B. s.index("H")
C. s[0]
D. s[1]

Câu 20. Cho xâu s = “Hello”. Để nối thêm xâu “ World” vào xâu s, ta dùng lệnh nào?

A. s.append(" World”)
B. s + " World"
C. s.split(" World")
D. s.join(“ World”)

Câu 21. Lệnh nào sau đây được sử dụng để kiểm tra xem một chuỗi có nằm trong một chuỗi khác không trong NNLT Python?

A. find()
B. in
C. replace()
D. split()

Câu 22. Cho chuỗi s = "abc def ghi”. Lệnh s.find(“def”) sẽ trả về giá trị nào?

A. 0
B. 3
C. 4
D. -1

Câu 23. Cho chuỗi s = "mot,hai,ba". Lệnh s.split(",") sẽ trả về kết quả gì?

A. "mot,hai,ba"
B. ["mot", "hai", "ba"]
C. ["mot,hai", "ba"]
D. "mot", "hai", "ba"

Câu 24. Lệnh nào sau đây được dùng để nối các phần tử của danh sách thành một chuỗi?

A. split()
B. find()
C. join()
D. replace()

Câu 25. Nếu s = "Hello" thì s.find("l") sẽ trả về giá trị nào?

A. 0
B. 2
C. 3
D. -1

Câu 26. Cho chuỗi s = "123abc456". Làm thế nào để lấy ra chuỗi "abc"?

A. s[3:6]
B. s.split('abc')
C. s.find('abc')
D. s.join('abc')

Câu 27. Nếu bạn muốn nối hai chuỗi lại với nhau, bạn sử dụng toán tử nào?

A. *
B. +
C. //
D. –

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

A. Lệnh join() và lệnh split() có chức năng giống nhau là dùng để nối xâu.
B. Lệnh join() có tác dụng ngược với lệnh split(), có chức năng nối các phần tử của danh sách thành một xâu.
C. Để tìm một xâu trong một xâu khác có thể dùng toán tử in hoặc lệnh find(). Lệnh find() trả về vị trí của xâu con trong xâu mẹ.
D. Lệnh split() tách một xâu thành các từ và đưa vào một danh sách.

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

A. <xâu 1> of <xâu 2>
B. <xâu 1> on <xâu 1>
C. <xâu 1> in <xâu 2>
D. <xâu 2> in <xâu 1>

Câu 30. Cú pháp đầy đủ của lệnh find() là:

A. . find(,start)
B. <xâu mẹ> : find(<xâu con,start>)
C. . find(,start>)
D. . find(,start>)

Câu 31. Cú pháp của lệnh split() là:

A. . split()
B. <xâu mẹ> : split(<kí tự tách>)
C. <xâu mẹ> : split()
D. . split(<kí tự tách>)

Câu 32. Cú pháp của lệnh join() là:

A. ‘kí tự nối' . join()
B. ‘kí tự nối' : join()
C. ‘kí tự nối' . join()
D. ‘kí tự nối” . join(<xâu mẹ>)

Câu 33. Chương trình trên giải quyết bài toán gì?

s = ""

for i in range(10):

    s = s + str(i)

    print(s)

A. In một xâu kí tự từ 0 tới 10.
B. In một xâu kí tự từ 0 tới 9.
C. In một xâu kí tự từ 1 tới 10.
D. In một xâu kí tự từ 1 đến 9.

Câu 34. Để tính độ dài của xâu s ta dùng hàm gì?

A. str(s).
B. len(s).
C. length(s).
D. s.len().

Câu 35. Sau khi thực hiện lệnh sau, biến s sẽ có kết quả là

s1 ="3986443"

s2 = ""

for ch in s1:

 if int(ch) % 2 == 0:

    s2 = s2 + ch

print(s2)

 

A. 3986443.
B. 8644.
C. 39864.
D. 443.

Câu 36. Chuỗi sau được in ra mấy lần?

s = "abcdefghi"

for i in range(10):

    if i % 4 == 0:

        print(s)

 

A. 0.
B. 1.
C. 2.
D. 3.

Câu 37. Biểu thức logic "01" in "10101" sẽ trả về giá trị gì?

A. True.
B. False.
C. 1.
D. 2.

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

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

s = "1221"

kq = False

for i in range(len(s)-1):

    if s[i] == "2" and s[i+1] == "1":

        kq = True

        break

print(kq)

A. True.
B. False.
C. Chương trình bị lỗi.
D. Vòng lặp vô hạn.

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

      >>> s = "0123145"

>>> s[0] = '8'

>>> print(s[0])

   

A. '8'.
B. '0'.
C. '1'.
D. Chương trình bị lỗi.

Câu 41. Phát biểu đúng trong các phát biểu sau là:

A. Lệnh float() trả về số nguyên từ số hoặc chuỗi biểu thức.
B. Có ít hàm có sẵn được xây dựng trong python.
C. Lệnh bool() chuyển một giá trị sang Boolean.
D. Lệnh input() có thể nhập vào một số nguyên mà không cần chuyển đổi kiểu.

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

def PhepNhan(Number):

    return Number * 10

print(PhepNhan(5))

A. 5.
B. 10.
C. Chương trình bị lỗi.
D. 50.

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

def Kieu(Number):

    return type(Number)

print(Kieu (5.0))

A. 5.
B. float.
C. Chương trình bị lỗi.
D. int.

Câu 44. Hàm sau có chức năng gì?

def sum(a, b):

    return

print("sum = " + str(a + b))

 

A. Trả về tổng của hai số a và b được truyền vào.
B. Trả về hai giá trị a và b.
C. Tính tổng hai số a và b.
D. Tính tổng hai số a và b và hiển thị ra màn hình.

Câu 45. Điền vào (...) để tìm ra số lớn nhất trong 3 số nhập vào:

def find_max(a, b, c):

    max = a

    if (...): max = b

    if (...): max = c

    return max

A. max < b, max < c.
B. max <= b, max < c.
C. max < b, max <=c.
D. max <=b, max<=c.

Câu 46. Chương trình sau bị lỗi ở dòng lệnh thứ bao nhiêu?

1| def add(a,b)

2|    sum = a+b

3|    return sum

4|    x=int(input())

5|    tong = add(x, 4)

6|    print("Tổng là: " + str(tong))

A. 1
B. 3
C. 5
D. 6

Câu 47. Hàm trong Python là gì?

A. Một biến đặc biệt.
B. Một khối lệnh có thể tái sử dụng.
C. Một kiểu dữ liệu
D. Một toán tử.

Câu 48. Điều gì xảy ra khi bạn gọi một hàm trong Python?

A. Chương trình kết thúc.
B. Khối lệnh trong hàm được thực thi.
C. Một lỗi xảy ra.
D. Không có gì xảy ra.

Câu 49. Cú pháp nào sau đây là đúng để định nghĩa một hàm trong Python?

A. function my_function():
B. def my_function
C. def my_function():
D. my_function():

Câu 50. len(), int(), print() là những ví dụ về:

A. Hàm tự định nghĩa.
B. Hàm tích hợp sẵn.
C. Biến.
D. Kiểu dữ liệu.

Câu 51. Lệnh print("Thời khoá biểu") thực hiện điều gì?

A. Chuyển đổi chuỗi "Thời khoá biểu" thành một số nguyên.
B. Yêu cầu nhập vào một xâu kí tự.
C. Hiển thị xâu kí tự "Thời khoá biểu" ra màn hình.
D. Trả về kiểu dữ liệu của biến.

Câu 52. Lệnh type() dùng để làm gì?

A. Chuyển đổi một giá trị sang kiểu dữ liệu khác.
B. In một giá trị ra màn hình.
C. Nhập một giá trị từ bàn phím.
D. Trả về kiểu dữ liệu của một biến.

Câu 53. Đâu là sự khác biệt giữa tham số và đối số của hàm?

A. Tham số được sử dụng khi gọi hàm, đối số được sử dụng khi định nghĩa hàm.
B. Tham số và đối số là giống nhau.
C. Tham số là biến trong định nghĩa hàm, đối số là giá trị được truyền vào khi gọi hàm.
D. Đối số là biến trong định nghĩa hàm, tham số là giá trị được truyền vào khi gọi hàm.

Câu 54. Khi nào nên sử dụng chương trình con (hàm)?

A. Khi chương trình quá ngắn.
B. Khi không cần chia nhỏ công việc.
C. Khi muốn chia nhỏ một bài toán lớn thành các phần nhỏ hơn, dễ quản lý.
D. Không bao giờ cần sử dụng chương trình con.

Câu 55. Từ khóa nào được sử dụng để trả về một giá trị từ một hàm?

A. exit.
B. value.
C. return.
D. print.

Câu 56. Điều gì xảy ra nếu một hàm không có câu lệnh return?

A. Lỗi sẽ xảy ra.
B. Hàm sẽ tự động trả về 0.
C. Hàm sẽ trả về None.
D. Hàm sẽ lặp vô hạn.

Câu 57. Hàm range() có chức năng gì?

A. Tìm kiếm một giá trị trong một danh sách.
B. Tạo ra một dãy số.
C. Sắp xếp một danh sách.
D. Tính tổng các phần tử trong một danh sách.

Câu 58. Câu lệnh def prime(n): là cú pháp của?

A. Gọi hàm
B. Định nghĩa hàm
C. Tham số của hàm
D. Đối số của hàm

Câu 59. Làm thế nào để gọi hàm tongduong với tham số A?

A. def tongduong(A):
B. tongduong
C. tongduong =A
D. tongduong(A)

Câu 60. Trong đoạn code sau, đâu là đối số?

def sum(a, b, c):

    return a + b + c

x = 10

y = 20

z = 30

result = sum(x, y, z)

 

A. a, b, c
B. return a + b + c
C. x, y
D. 10, x, y

Câu 61. Trong đoạn code sau, đâu là tham số?

def sum(a, b, c):

    return a + b + c

x = 10

y = 20

z = 30

result = sum(x, y, z)

A. 10, x, y
B. Return a+b+c
C. x,y
D. a,b,c

Câu 62. Hoàn thiện chương trình để tìm UCLN của hai số?

def UCLN(a, b):

    if (...):

        return a

    return UCLN(b, a % b)

a = int(input('Nhap vao so nguyen duong a = '))

b = int(input('Nhap vao so nguyen duong b = '))

print(“UCLN cua 2 so la:”,UCLN(a, b))

 

A. a>c
B. a>b
C. a==1
D. b==0

Câu 63. Các tham số của f có kiểu dữ liệu gì nếu hàm f được gọi như sau: f( '5.0')

A. str
B. float.
C. int
D. Không xác định.

Câu 64. Hoàn thành chương trình kiểm tra một số có là số nguyên tố không:

def prime(n):

    c=0

    k=1

    while(k<=n):

        if n%k==0:

            c=c+1

        k=k+1

    if c==2: return (...) # Sửa ở đây, c == 2 mới là số nguyên tố

    else: return (...)

A. True, False.
B. True, True.
C. False, False.
D. False, True.

Câu 65. Chương trình sau bị lỗi ở dòng thứ bao nhiêu?

def tinh(a,b):

    if(b!=0):

        return a//b

    s=tinh(1,m)

    print(s)

   

A. 2
B. 3
C. 4
D. 5.

Câu 66. Giá trị của x là bao nhiêu sau biết kết quả là 8:

def tinh(a,b,c):

    if (b!=0):

        return a//b+c*2

s=tinh(1,5,x)

print(s)

   

A. 3
B. 2
C. 1
D. 4.

II. ĐÚNG/SAI

Câu 1: Trong thực tế, khi bạn cần trích xuất tên người dùng từ địa chỉ email (ví dụ, từ
"
john.doe@example.com" lấy "john.doe"), phương pháp nào sau đây là hiệu quả nhất?

a) Sử dụng find() để tìm vị trí của "@" và sau đó sử dụng slicing.
b) Sử dụng split("@") để tách chuỗi thành hai phần và lấy phần đầu.
c) Sử dụng vòng lặp để duyệt từng ký tự cho đến khi gặp "@".
d) Sử dụng hàm replace() để thay thế "@example.com" bằng "".

Câu 2: Bạn muốn tạo một chương trình để kiểm tra xem một mã số thuế có hợp lệ hay không (ví dụ, kiểm tra
độ dài, cấu trúc). Phương pháp nào sau đây là thích hợp nhất?

A. Sử dụng len() để kiểm tra độ dài và các phép toán trên xâu để kiểm tra cấu trúc.
B. Sử dụng find() để tìm các ký tự đặc biệt trong mã số thuế.
C. Sử dụng split() để tách mã số thuế thành các phần và kiểm tra từng phần.
D. Sử dụng hàm replace() để loại bỏ các ký tự không hợp lệ.

Câu 3. Cho đoạn chương trình sau: Học sinh trả lời đúng hoặc sai cho các ý sau:

s = input("Nhập xâu ký tự: ")

d = 0

for k in s:

    d = d + 1

print(d)

print(s[1], s[d - 1])

so = 0

for k in s:

    if k == 'b':

        so += 1

print(so)

a) Tính độ dài của xâu s.
b) In xâu vừa nhập ra màn hình.
c) In kí tự đầu tiên của xâu s ra màn hình. Sai, in ký tự thứ 2 và cuối
d) Đếm trong xâu s có bao nhiêu kí tự b.

III. TỰ LUẬN

Câu 1. Viết chương trình nhập một xâu S là họ tên đầy đủ (gồm họ, đệm, tên) từ bàn phím, sau đó in ra màn hình lần lượt họ, đệm và tên vừa nhập.

Input

Output

S = “Nguyễn Văn An”

Họ: Nguyễn

Họ đệm: Văn

Tên: An

Câu 2. Viết chương trình nhập vào một xâu S từ bàn phím gồm các số tự nhiên, mỗi số cách nhau bởi một dấu
cách (khoảng trống). Tính và in ra màn hình tổng, trung bình cộng của các số vừa nhập từ bàn phím.

Input

Output

S = "2 4 0 -3 7"

Tổng: 10

Trung bình: 2.0

Câu 3. Áp dụng cấu trúc hàm để viết chương trình nhập vào số tự nhiên N từ bàn phím. Kiểm tra số N có phải
là số nguyên tố hay không?

Input

Output

N = 5

“5 là số nguyên tố"

N = 6

‘6 không phải số nguyên tố'

Câu 4. Áp dụng cấu trúc hàm để viết chương trình nhập vào một xâu S từ bàn phím. Kiểm tra và in ra trong
xâu có bao nhiêu kí tự là chữ số, bao nhiêu kí tự là chữ cái.

Input

Output

S = "70 Le Hong Phong"

“Xâu có 2 kí tự là chữ số'

“Xâu có 11 kí tự là chữ cái'

Câu 5. Viết một hàm Python có tên tinhtong nhận hai tham số là hai số nguyên dương a và b. Hàm này trả về
tổng của tất cả các số chẵn nằm trong khoảng từ a đến b (bao gồm cả a và b nếu chúng là số chẵn).

Input

Output

a = 3

Tổng: 18

b=8

Câu 6. Định nghĩa một hàm Python có tên kiemtra_namnhuan nhận một tham số là nam (số nguyên). Hàm này trả về True nếu năm đó là năm nhuận và False nếu không phải. Sử dụng hàm này để viết chương trình nhập vào một năm từ bàn phím và in ra thông báo cho biết năm đó có phải là năm nhuận hay không.

Input

Output

nam = 2000

“Năm 2000 là năm nhuận'

nam = 2025

‘Năm 2025 là năm không nhuận’

 

 

 

Chúc các em ôn tập thật tốt!

Post a Comment

Chúng tôi rất vui khi bạn muốn đóng góp ý kiến. Để đảm bảo môi trường trao đổi lành mạnh, vui lòng tuân thủ các quy định sau:

1. Sử dụng tiếng Việt có dấu đầy đủ, tránh viết tắt.
2. Bình luận sẽ được kiểm duyệt trước khi công khai.
3. Tôn trọng người khác và đóng góp ý kiến xây dựng.
4. Tuân thủ chính sách của Google và TTKT.

Cảm ơn bạn đã đồng hành cùng chúng tôi!

CẢNH BÁO

Gần đây, chúng tôi phát hiện nội dung bị chụp màn hình và chia sẻ trái phép. TTKT khuyến cáo bạn không nên chụp màn hình mà hãy chia sẻ link đến bài viết để tôn trọng tác giả và tránh bị vô hiệu hóa tài khoản.

Yêu cầu Đăng nhập

Để tiếp tục sử dụng, vui lòng đăng nhập.