WorksheetsBÀI 27-28
Total questions: 30
Worksheet time: 15mins
Tham số (Parameter) của hàm xuất hiện ở đâu trong chương trình?
Trong lời gọi hàm
Ngay sau từ khóa def khi khai báo hàm
Ở cuối chương trình
Bên ngoài tất cả các hàm
Đối số (Argument) là gì?
Là biến được khai báo bên trong hàm
Là tên của hàm
Là giá trị cụ thể hoặc biến được truyền vào khi gọi hàm
Là từ khóa để kết thúc hàm
Biến cục bộ (Local Variable) là biến được khai báo ở đâu?
Bên trong hàm
Bên ngoài hàm
Trong lời gọi hàm
Tại dòng đầu tiên của chương trình
Biến toàn cục (Global Variable) có phạm vi hoạt động như thế nào?
Chỉ hoạt động bên trong hàm nơi nó được khai báo
Có tác dụng trong toàn bộ chương trình (cả trong và ngoài hàm)
Chỉ có tác dụng khi chương trình báo lỗi
Chỉ hoạt động tại dòng lệnh nó được sinh ra
Để thay đổi giá trị của biến toàn cục từ bên trong một hàm, ta cần dùng từ khóa nào?
local
def
return
global
Quy tắc nào sau đây là ĐÚNG về số lượng tham số và đối số?
Số lượng tham số phải lớn hơn số lượng đối số
Số lượng tham số phải nhỏ hơn số lượng đối số
Số lượng tham số và đối số phải bằng nhau
Không cần quan tâm đến số lượng
Nếu một đối số là biến được truyền vào hàm, điều kiện bắt buộc là gì?
Biến đó phải có tên giống tên tham số
Biến đó phải được gán giá trị trước khi truyền
Biến đó phải là số nguyên
Biến đó phải được khai báo global
Một lợi ích của việc sử dụng hàm là gì?
Làm chương trình dài hơn và phức tạp hơn
Giúp chia nhỏ chương trình thành các phần dễ quản lý
Làm chương trình chạy chậm hơn
Không có lợi ích gì
Khi ra khỏi hàm, biến cục bộ sẽ như thế nào?
Tiếp tục tồn tại và giữ nguyên giá trị
Biến thành biến toàn cục
Không còn tác dụng và không thể truy cập được nữa
Được lưu vào ổ cứng
Trong phép ẩn dụ về "Căn phòng", biến cục bộ được ví như cái gì?
Đồ dùng chung ở hành lang
Người quản lý tòa nhà
Đồ dùng cá nhân trong phòng riêng
Cửa ra vào
Sự khác biệt chính về vai trò giữa Tham số và Đối số là gì?
Tham số là giá trị thực tế, đối số là biến chờ nhận giá trị
Tham số là biến nhận giá trị trong hàm, đối số là giá trị truyền vào từ bên ngoài
Tham số luôn là số, đối số luôn là chữ
Không có sự khác biệt nào
Tại sao chương trình báo lỗi nếu bạn cố gắng sử dụng một biến cục bộ ở bên ngoài hàm nơi nó được khai báo?
Vì biến cục bộ đã bị xóa khỏi bộ nhớ sau khi hàm kết thúc
Vì biến cục bộ bị khóa mật khẩu
Vì tên biến quá ngắn
Vì biến cục bộ trùng tên với biến toàn cục
Nếu trong hàm có một biến cục bộ trùng tên với biến toàn cục (và không dùng từ khóa global), điều gì sẽ xảy ra khi ta thay đổi biến đó trong hàm?
Biến toàn cục bên ngoài cũng thay đổi theo
Chương trình báo lỗi trùng tên
Chỉ biến cục bộ bị thay đổi, biến toàn cục giữ nguyên giá trị
Cả hai biến đều bị xóa
Hàm có thể "nhìn thấy" và đọc giá trị của biến toàn cục không?
Không bao giờ
Có, nếu biến đó không bị che bởi một biến cục bộ cùng tên
Chỉ khi dùng từ khóa local
Chỉ khi biến toàn cục là số lẻ
Khi nào ta BẮT BUỘC phải dùng từ khóa "global"?
Khi muốn in giá trị biến toàn cục trong hàm
Khi muốn khai báo một biến mới trong hàm
Khi muốn thay đổi (gán giá trị mới) cho biến toàn cục từ bên trong hàm
Khi hàm không có tham số
Việc chia chương trình lớn thành các hàm nhỏ mang lại lợi ích gì về mặt tư duy logic?
Làm cho vấn đề trở nên rối rắm hơn
Giúp chương trình rõ ràng, dễ hiểu, dễ quản lý theo tư duy chia nhỏ vấn đề
Giúp máy tính không cần CPU
Giúp lập trình viên không cần đặt tên biến
Nếu khai báo hàm "def Tong(a, b):", cách gọi hàm nào sau đây thể hiện việc thiếu đối số?
Tong(3, 5)
Tong(10, 20)
Tong(5)
Tong(1, 2, 3)
Điều gì xảy ra nếu ta truyền một biến chưa được gán giá trị làm đối số cho hàm?
Hàm tự động gán giá trị 0 cho biến đó
Chương trình báo lỗi vì biến chưa được định nghĩa (NameError)
Hàm bỏ qua biến đó và chạy tiếp
Hàm yêu cầu người dùng nhập giá trị ngay lập tức
Tại sao nói hàm giúp "tiết kiệm câu lệnh"?
Vì tên hàm luôn ngắn hơn tên biến
Vì một đoạn mã xử lý phức tạp chỉ cần viết một lần và gọi lại nhiều lần bằng một dòng lệnh
Vì hàm tự động xóa các dòng lệnh thừa
Vì máy tính không tính dòng lệnh trong hàm
Mệnh đề nào sau đây mô tả đúng nhất về mối quan hệ giữa biến toàn cục và biến cục bộ cùng tên?
Chúng là cùng một biến
Biến cục bộ sẽ "che khuất" biến toàn cục trong phạm vi của hàm
Biến toàn cục sẽ xóa biến cục bộ
Không thể đặt tên biến cục bộ trùng với biến toàn cục
Cho hàm sau: def hieu(a, b): print(a - b) Kết quả của lời gọi hieu(10, 3) là gì?
A. 7
B. -7
C. 13
D. Lỗi
Cho đoạn chương trình: def phep_nhan(x, y): return x * y m = 5 n = 2 print(phep_nhan(m, n)) Trong lời gọi hàm trên, đâu là đối số?
A. x và y
B. m và n
C. 5 và 2
D. phep_nhan
Đoạn chương trình sau sẽ in ra kết quả gì?
x = 10
def thay_doi():
x = 20
print(x)
thay_doi()
A. 10
B. 20
C. Lỗi
D. 30
Văn đoạn chương trình trên, nếu thêm lệnh print(x) ở cuối cùng (ngoài hàm): x = 10 def thay_doi(): x = 20 thay_doi() print(x) Kết quả in ra màn hình của dòng lệnh cuối cùng là gì?
A. 20
B. 10
C. Lỗi
D. 0
Câu 25: Chương trình sau có lỗi ở đâu?
Lỗi ở dòng gọi hàm tinh_toan()
Lỗi ở dòng print(ket_qua) vì biến "ket_qua" là cục bộ, không tồn tại ngoài hàm
Lỗi ở dòng def tinh_toan():
Không có lỗi
Để đoạn mã sau in ra số 50, cần điền từ gì vào chỗ trống (...)? so = 5 def tang_so(): ... so so = 50 tang_so() print(so)
def
global
local
return
Cho hàm "def xin_chao(ten, loi_chuc):". Cách gọi nào sau đây là SAI?
xin_chao("Lan", "Chúc ngủ ngon")
xin_chao("Hoa", 10)
xin_chao("Nam")
x = "Mai"; y = "Hello"; xin_chao(x, y)
Kết quả của đoạn mã sau là gì?
A. 6 và 10
B. 5 và 5
C. 6 và 6
D. Lỗi trùng tên tham số x
Cho đoạn mã: a = 1 def test(): print(a) test() Kết quả là gì?
A. Lỗi
B. 1
C. None
D. 0
Câu 30: Đoạn mã sau thực hiện điều gì?
Tính chu vi hình chữ nhật với hai cạnh a và b
Tính diện tích hình chữ nhật với hai cạnh a và b
Tính tổng hai số a và b
Tính chu vi hình tròn với bán kính a
