Trắc nghiệm tin học 10 cánh diều CĐF Bài 11: Thực hành lập trình với hàm và thư viện
Bộ câu hỏi trắc nghiệm tin học 10 cánh diều. Câu hỏi và bài tập trắc nghiệm CĐF Bài 11: Thực hành lập trình với hàm và thư viện. Bộ trắc nghiệm có 4 mức độ: Thông hiểu, nhận biết, vận dụng và vận dụng cao. Hi vọng, tài liệu này sẽ giúp thầy cô nhẹ nhàng hơn trong việc ôn tập. Theo thời gian, chúng tôi sẽ tiếp bổ sung thêm các câu hỏi.
Xem: => Giáo án tin học 10 cánh diều (bản word)
CHỦ ĐỀ F: GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNHBÀI 11: THỰC HÀNH LẬP TRÌNH VỚI HÀM VÀ THƯ VIỆN
A. TRẮC NGHIỆM
1. NHẬN BIẾT (10câu)
Câu 1: 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. Thủ tục là hàm nhưng hàm có thể không là thủ tục.
B. Hàm và thủ tục là hai khái niệm hoàn toàn khác nhau.
C. Trong Python, hàm và thủ tục là hai khái niệm đồng nhất.
D. Hàm là thủ tục nhưng thủ tục có thể không phải là hàm.
Câu 2: Trong định nghĩa của hàm có thể có bao nhiêu từ khoá return
A. Tối thiểu một.
B. Tối thiểu hai.
C. Không hạn chế.
D. Duy nhất một.
Câu 3: 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 hoặc không có return hoặc có return nhưng không có giá trị sau từ khoá return.
B. Trong mô tả hàm không có từ khoá return.
C. Trong mô tả hàm chỉ có một từ khoá return.
D. Trong mô tả hàm phải có tối thiểu hai từ khoá return.
Câu 4: Hàm sau có ý nghĩa gì
A. Hàm trả lại x nếu y là số lớn hơn, ngược lại trả về tổng của x và y.
B. Hàm trả lại x nếu x là số lớn hơn, ngược lại trả về tổng của x và y.
C. Hàm trả lại x ở dạng kí tự nếu x là số lớn hơn, ngược lại trả về tổng của x và y.
D. Hàm trả lại x ở dạng kí tự nếu y là số lớn hơn, ngược lại trả về tổng của x và y.
Câu 5: Hàm sau có ý nghĩa gì
A. Hàm trả về xâu (hoặc danh sách) ngược của xâu s.
B. Hàm trả về dãy số trong khoảng độ dài của xâu đến -1.
C. Hàm trả về dãy số trong khoảng dạng số nguyên của xâu đếm -1
D. Hàm trả về xâu s đã được nhập vào.
Câu 6: Viết hàm nhập số nguyên n từ bàn phím. Hàm sẽ trả lại số đã nhập
A. def NhapDL:
n = int(input("Nhập số nguyên n: "))
return n
n = int(input("Nhập số nguyên n: "))
return n
C. def NhapDL():
n = int(input(Nhập số nguyên n:))
return n
D. def NhapDL():
n = input("Nhập số nguyên n: ")
return n
Câu 7: Hàm sau thực hiện công việc gì
A. Hàm trả lại số các ước số thực sự của n.
B. Hàm trả lại số các ước số thực sự của n thỏa mãn điều kiện chia hết cho k.
C. Hàm trả lại số các ước số thực sự của n, không tính 1.
D. Hàm trả lại số liền sau các ước số thực sự của n.
Câu 8: Hàm sau thực hiện công việc gì
A. Hàm trả lại số liền sau các ước số thực sự của n.
B. Hàm trả lại số liền trước các ước số thực sự của n.
C. Hàm trả lại số các ước số thực sự của n thỏa mãn điều kiện chia hết cho k.
D. Hàm trả lại tổng các ước số thực sự của n, tính cả 1.
Câu 9: Phát biểu nào dưới đây không đúng
A. Trong Python lệnh print() là một hàm.
B. Trong Python, không thể định nghĩa hàm với tên trùng với từ khoá.
C. Trong Python có thể tự tạo hàm trùng tên với một hàm có sẵn.
D. “Các lệnh mô tả hàm” phải viết ngay sau dấu hai chấm “:” và không xuống dòng.
Câu 10: Cuối dòng đầu tiên của định nghĩa hàm phải có
A. Dấu chấm phẩy.
B. Dấu hai chấm.
C. Dấu phẩy.
D. Dấu chấm.
2. THÔNG HIỂU (10 câu)
Câu 1: Kết quả của đoạn chương trình sau
A. In ra các số lẻ từ 1 đến 100
B. In ra màn hình các số chẵn từ 1 đến 100
C. In ra các số từ 1 đến 100
D. In ra các số từ 1 đến 99
Câu 2: Cho đoạn chương trình sau
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.
Câu 3: Cho chương trình sau
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. 6
B. 4
C. 2
D. -2
Câu 4: Cho đoạn chương trình sau
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(a1,b1):
B. h(a,b)
C. s=a1-b1
D. return s
Câu 5: Cho đoạn chương trình sau
Trong đoạn chương trình trên a1, b1 được gọi là
A. Tên hàm.
B. Biến cục bộ.
C. Tham số thực sự.
Câu 6: Output của chương trình dưới đây là
A. ‘Hello World!’ ‘Hello World!’
B. Hello World!
Hello World!
C. Hello Hello
D. Không có đáp án đúng.
Câu 7: Kết quả của chương trình sau là
A. 5
B. 10
C. 45
Câu 8: Cho biết kết quả hiển thị ra màn hình sau khi máy chạy đoạn chương trình Python sau
A. 3
B. 2
C. 1
D. 0
Câu 9: Phát biểu nào dưới đây đúng
A. Hàm time (với lời gọi time()) trong thư viện time cho biết thời gian tại thời điểm hiện tại (tính theo giây).
B. Để sử dụng hàm time ta cần gắn thứ viện datetime vào chương trình.
C. Sử dụng chương trình con sẽ làm chương trình dễ hiểu, tuy nhiên khó tìm lỗi hơn.
D. Khai báo hàm trong Python luôn có danh sách tham số
Câu 10: Phát biểu nào dưới đây không đúng
A. Trong Python, một hàm có thể trả về một giá trị qua tên của nó nếu như có lệnh return <Giá_trị> ở bên ngoài hàm.
B. Với những hàm xử lí qua tên hàm thì tên của hàm được dùng như một biến trong chương trình gọi.
C. Trong Python, cách khai báo chương trình con là: def tên_hàm (tham số): Trong đó các them số cách nhau bởi dấu phẩy.
D. Mỗi hệ thống lập trình của một ngôn ngữ lập trình bậc cao đều cung cấp một số thư viện các chương trình con được xây dựng sẵn.
3. VẬN DỤNG (3 câu)
Câu 1: Viết hàm số Number() có tính năng sau
· Tham số của hàm là dãy các số nguyên A.
· Hàm sẽ trả lại giá trị là 2 số p, q với ý nghĩa sau: p - số các số chẵn của dãy A, q - số các số lẻ của dãy A.
p = 0
q = 0
for n in A:
if n%2 == 0:
p = p + 1
else:
q = q + 1
return p,q
B. def Number(A):
p = 0
q = 0
for n in A:
if n//2 == 0:
p = p + 1
else:
q = q + 1
return p,q
C. def Number(A):
p = 0
q = 0
for n in A:
if n%2 == 0:
p = p + 1
else:
q = q + 1
return (p,q)
D. def Number(A):
p = 0
q = 0
for n in A:
if n%2 == 0:
q = q + 1
else:
p = p + 1
return <q,p>
Câu 2: Viết chương trình vẽ một hình chữ nhật bằng các dấu # với một cạnh có độ dài bằng 10, một cạnh có độ dài bằng a. Ví dụ với a = 4, hình chữ nhật cần vẽ như hình bên.
Yêu cầu xây dựng một hàm Drawbox với tham số (a), hàm này đưa ra màn hình các dòng, mỗi dòng chứa 10 dấu # liên tiếp và tham số a quyết định số dòng sẽ được đưa ra. Chương trình gọi hàm Drawbox(a) với a nhập vào từ bàn phím.
A. def Drawbox(a):
for i in range(a + 1):
for j in range(10):
print("#", end = "#")
print()
a = int(input("Nhập a "))
Drawbox(a)
B. def Drawbox(a):
for i in range(a + 1):
for j in range(10):
print("#", end = "")
print()
a = int(input("Nhập a "))
Drawbox(a)
C. def Drawbox(a):
for i in range(a + 1, 1):
for j in range(10, 1):
print("#", end = "")
print()
a = int(input("Nhập a ")
Drawbox(a)
D. def Drawbox(a):
for i in range(a + 1):
for j in range(10):
print("#", end = "")
a = int(input("Nhập a "))
Drawbox(a)
Câu 3: Em hãy viết chương trình nhập hai số tự nhiên Y1, Y2 là số năm, Y2 > Y1. Tính xem trong khoảng thời gian từ năm Y1 đến năm Y2 có bao nhiêu năm nhuận
A. def nhuan(year):
if year % 400 == 8 of (year X 4 == 6 and year%100 != 0):
return True
def Tính_nhuan(Y1, Y2):
count = 0
for year in range(Y1, Y2+1):
if nhuan(year): count = count + 1
return count
Y1 = int(input( "Nhập năm đầu: ")) Y2 = int(input( "Nhập năm cuối: "))
print("Từ năm ",Y1," đến năm ",Y2," có ",Tinh_nhuan(Y1, Y2)," năm nhuận. ")
B. def nhuan(year):
if year % 400 == 8 of" (year X 4 == 6 and year%100 != 0):
return True
else:
return False
def Tính_nhuan(Y1, Y2):
count = 0
for year in range(Y1, Y2+1):
return count
Y1 = int(input( "Nhập năm đầu: "))
Y2 = int(input( "Nhập năm cuối: "))
print("Từ năm ",Y1," đến năm ",Y2," có ",Tinh_nhuan(Y1, Y2)," năm nhuận. ")
C. def nhuan(year):
if year % 400 == 8 of" (year X 4 == 6 and year%100 != 0):
return True
else:
return False
def Tính_nhuan(Y1, Y2):
count = 0
for year in range(Y1, Y2+1):
if nhuan(year): count = count + 1
Y1 = int(input( "Nhập năm đầu: "))
Y2 = int(input( "Nhập năm cuối: ")
print("Từ năm ",Y1," đến năm ",Y2," có ",Tinh_nhuan(Y1, Y2)," năm nhuận. ")
if year % 400 == 8 of (year X 4 == 6 and year%100 != 0):
return True
else:
return False
def Tính_nhuan(Y1, Y2):
count = 0
for year in range(Y1, Y2+1):
if nhuan(year): count = count + 1
return count
Y1 = int(input( "Nhập năm đầu: "))
Y2 = int(input( "Nhập năm cuối: "))
print("Từ năm ",Y1," đến năm ",Y2," có ",Tinh_nhuan(Y1, Y2)," năm nhuận. ")
4. VẬN DỤNG CAO (1 câu)
Câu 1:Viết chương trình in bảng cửu chương ra màn hình. Yêu cầu bảng cửu chương in ra thành 10 khối bao gồm 2 hàng, 5 cột như sau
A. def st(n):
if n < 10:
return " "+str(n)
else:
return str(n)
def space(k):
return " "*k
def printBCC():
for h in range(10):
i = i+1
for j in range(1,6):
print(st(j) + " x " + st(i) + " = " + st(i*j) + space(2), end= " ")
print()
print()
for h in range(10):
i = h+1
for j in range(6,11):
print(st(j) + " x " + st(i) + " = " + st(i*j) + space(2), end = " ")
print()
# Chương trình chính
printBCC()
if n < 10:
return " "+str(n)
else:
return str(n)
def space(k):
return " "*k
def printBCC():
for h in range(10):
i = h+1
for j in range(1,6):
print(st(j) + " x " + st(i) + " = " + st(i*j) + space(2), end= " ")
print()
print()
for h in range(10):
i = h+1
for j in range(6,11):
print(st(j) + " x " + st(i) + " = " + st(i*j) + space(2), end = " ")
print()
# Chương trình chính
printBCC()
C. def st(n):
if n < 10:
return " "+str(n)
else:
return str(n)
def space(k):
return " "*k
def printBCC():
for h in range(10):
i = h+1
for j in range(1,6):
print(st(j) + " x " + st(i) + " = " + st(i*j), end= " ")
print()
print()
for h in range(10):
i = h+1
for j in range(6,11):
print(st(j) + " x " + st(i) + " = " + st(i*j), end = " ")
print()
# Chương trình chính
printBCC()
D. def st(n):
if n < 10:
return " "+str(n)
else:
return str(n)
def space(k):
return " "*k
def printBCC():
for h in range(10):
i = h+1
for j in range(1,6):
print(st(j) + " x " + st(i) + " = " + st(i**j) + space(2), end= " ")
print()
print()
for h in range(10):
i = h+1
for j in range(6,11):
print(st(j) + " x " + st(i) + " = " + st(i**j) + space(2), end = " ")
print()
# Chương trình chính
printBCC()
=> Giáo án tin học 10 cánh diều bài 11: Thực hành lập trình với hàm và thư viện (2 tiết)