Bài 28: Phạm vi của biến
-
793 lượt thi
-
15 câu hỏi
-
30 phút
Danh sách câu hỏi
Câu 1:
Hoàn thiện (…) trong phát biểu sau:
“Trong Python tất cả các biến khai báo bên trong hàm đều có tính …, không có hiệu lực ở bên … hàm”.
Đáp án đúng là: B
Trong Python tất cả các biến khai báo bên trong hàm đều có tính địa phương (cục bộ), không có hiệu lực ở bên ngoài hàm.
Câu 2:
Số phát biểu đúng trong các phát biểu sau là:
1) Tất cả các biến bên trong hàm đều có tính cục bộ.
2) Tất cả các biến bên trong hàm chỉ có tính cục bộ.
3) Biến cục bộ trong hàm nếu gọi bên ngoài hàm sẽ bị lỗi.
Đáp án đúng là: B
Phát biểu đúng: 1, 3.
Câu 3:
Chọn phát biểu sai trong các phát biểu sau:
Đáp án đúng là: A
Chương trình chính không thể sử dụng biến cục bộ bên trong hàm.
Câu 4:
Giá trị của x, y là bao nhiêu khi thực hiện lệnh f(1, 3)
>>> x, y = 3, 4
>>> def f(x, y):
x = x + y
y = y + 2
return x
Đáp án đúng là: D
Giá trị của biến x, y không thay đổi.
Câu 5:
Giá trị của a, b là bao nhiêu khi thực hiện lệnh f(2, 5)
>>> a, b = 0, 1
>>> def f(a, b):
a = a * b
b = b // 2
return a + b
Đáp án đúng là: D
Giá trị của biến a, b không thay đổi.
Câu 6:
Kết quả của chương trình này là bao nhiêu?
s = "Tôi tên là: "
def kq(name):
s = s+ name
print(kq("Long"))
Đáp án đúng là: D
Chương trình bị lỗi do vi phạm phạm vi sử dụng biến
Câu 7:
Kết quả của chương trình sau là bao nhiêu?
s = "Hôm nay tôi đi học "
def kq(name):
s = "Hello World"
s = s + “!!!”
return s
print(s)
Đáp án đúng là: A
Giá trị của chuỗi s bên ngoài hàm không bị thay đổi.
Câu 8:
Kết quả của chương trình sau là bao nhiêu?
def kq(name):
s = "Tôi tên là: "
s = s+ name
return s
print(kq("Xuân"))
Đáp án đúng là: C
Hàm thực hiện nối hai chuỗi và trả về chuỗi s mới.
Câu 9:
Kết quả của chương trình sau là bao nhiêu?
>>>def f(a,b):
return a + b + N
>>> N = 5
>>>f(3, 3)
Đáp án đúng là: C
Hàm tính tổng của 3 số a, b, và N thu được kết quả là 11.
Câu 10:
Nếu muốn biến bên ngoài vẫn có tác dụng bên trong hàm thì cần khai báo lại biến này bên trong hàm với từ khoá nào
Đáp án đúng là: A
Từ khoá global giúp biến bên ngoài vẫn có tác dụng bên trong hàm.
Câu 11:
Kết quả nào được in ra khi thực hiện các câu lệnh sau:
>>>def f(x, y):
a = x + y
print(a + n)
>>>n = 5
>>>f(2, 3)
Đáp án đúng là: B
Tính tổng ba số x, y, n là 2 + 3 + 5 = 10.
Câu 12:
Kết quả của chương trình sau là:
def add(x,y):
print(x+y)
x=15
add(x ,10)
add(x,x)
y=20
add(x,y)
Đáp án đúng là: C
Hàm add(x, y) được thực hiện 3 lần :
15 + 10 = 25
15 + 15 = 30
20 + 15 = 35
Câu 13:
Cho biết kết quả của chương trình sau:
def changeme(mylist):
mylist.append([1,2,3,4])
mylist = [10,20,30]
changeme( mylist)
print(mylist)
Đáp án đúng là: D
Danh sách [1, 2, 3, 4] được nối vào mylist ban đầu.
Câu 14:
Chương trình sau bị lỗi ở dòng lệnh thứ bao nhiêu?
def msg():
a=10
print("Gia tri cua a la",a)
return msg()
print a
Đáp án đúng là: B
Biến a ở trong hàm nên không thể được sử dụng bên ngoài hàm
Câu 15:
Chương trình sau bị lỗi ở dòng lệnh thứ:
b=20
def msg():
a=10
print ("Gia tri cua a la",a)
print ("Gia tri cua b la",b)
return msg()
print(b)
Đáp án đúng là: D
Chương trình không có lỗi do biến b được khai báo bên ngoài hàm.