You are on page 1of 8

Trường Đại Học Nông Lâm Tp.

HCM Cộng Hòa Xã Hội Chủ Nghĩa Việt Nam


Khoa Công Nghệ Thông Tin Độc Lập - Tự Do - Hạng Phúc

ĐỀ THI Điểm
Môn: Lâ ̣p trình GIS (đề số 2)
Thời gian: 60 phút
Ghi chú: được tham khảo tài liệu
Lớp:..................................... Họ và tên: ....................................................... MSSV:......................

Trang 1
1 - Để hiển thị form chưa được khởi tạo trong bô ̣ nhớ, bạn sử (C) - lstCities.String
dùng lê ̣nh ____ (D) - lstCities.Text
(A) - Show
11 - Cấu trúc lă ̣p Do Until...Loop thực hiê ̣n viê ̣c kiểm tra biểu
(B) - Load and Show
thức điều kiê ̣n
(C) - Load
(A) - Không kiểm tra
(D) - Đầu tiên Load, sau đó Show
(B) - Kiểm tra ở cuối vòng lă ̣p
2 - Các ký tự nào sau đây thường được dùng làm tiếp đầu ngữ (C) - Kiểm tra ở giữa vòng lă ̣p
cho điều khiển image control? (D) - Kiểm tra ở đầu vòng lă ̣p
(A) - im
12 - Khi bạn chọn mô ̣t mục trong ô danh sách pop-up đang hiển
(B) - ig
thị các phương thức và các thuô ̣c tính, phím nào bạn sẽ
(C) - img nhấn để VB tự đô ̣ng hoàn thiê ̣n đoạn lê ̣nh
(D) - imc
(A) - Tab only
3 - Câu lê ̣nh nào sau đây sử dụng từ khóa New có giá trị? (B) - Tab or Space

(A) - Dim cmdNew As New cmdCreate (C) - Ctrl+Tab

(B) - Dim cmdNew As New CommandButton (D) - Space only

(C) - Dim frmNew As New frmMain 13 - Thuô ̣c tính nào dùng để qui định tiêu đền cửa sổ cho form
(D) - Dim frmNew As New Form
(A) - Text
4 - Tất cả các phát biểu lê ̣nh đòi hỏi phải có ít nhất mô ̣t đối số (B) - Font

(A) - True (C) - Caption

(B) - False (D) - Name

5 - Điềukhiển tương tác nào sau đây cho phép người sử dụng 14 - Các biến số mă ̣c dù khác nhau về kiểu dữ liê ̣u nhưng kích
nhâ ̣p vào giá trị thước thì phải như nhau
(A) - UIButtonControl (A) - True

(B) - UIEditBoxControl (B) - False

(C) - UIToolControl 15 - Bạn có thể không cần phải khai báo biến số trước khi sử
(D) - UIComboBoxControl dụng nó (nhưng thao tác này thì luôn được khuyên nên
thực hiê ̣n)
6 - Tất cả các hàm đều trả về giá trị
(A) - True
(A) - True
(B) - False
(B) - False
16 - Khi bạn lưu trữ các mã lê ̣nh VBA trong ArcMap, các lê ̣nh
7 - Khi bạn nhấp kép (double-click) vào mô ̣t ô điều khiển trên sẽ luôn luôn lưu trong map document (*.mxd).
form, bạn sẽ “nhảy đến” _______ của ô điều khiển đó
(A) - True
trong của sổ viết lê ̣nh
(B) - False
(A) - event procedure
(B) - Các biến số variables 17 - Khi nào bạn nên thay đổi thuô ̣c tính NAME của ô điều
(C) - Giá trị khiểu
(D) - Các câu lê ̣nh (A) - Trong thời điểm Run time
(B) - Bất kỳ lúc nào, trong thời điểm design hay runtime
8 - Các ký tự nào sau đây thường được dùng làm tiếp đầu ngữ
(C) - Trước khi các mã lê ̣nh liên quan đến ô điều khiển được
cho điều khiển list box?
viết.
(A) - lst
(D) - Sau khi các mã lê ̣nh liên quan đến ô điều khiển được
(B) - lbl
viết.
(C) - lis
(D) - ist 18 - Thành phần nào sau đây không phải là mô ̣t object
(A) - BackColor
9 - Thủ tục sự kiê ̣n mă ̣c định của ô điều khiển list box
(B) - Collection
(A) - KeyDown
(C) - Label
(B) - Enter
(D) - Form
(C) - Change
(D) - Click 19 - Mô ̣t vài thuô ̣c tính sẽ tự đô ̣ng thay đổi khi bạn di chuyển
hay thay đổi kích thước của ô điều khiển.
10 - Đoạn lê ̣nh nào sau đây sẽ lấy giá trị thành phố được chọn (A) - True
trong hô ̣p list box tên là lstCities?
(B) - False
(A) - lstCities.Index
(B) - lstCities.List 20 - Hằng số của Visual Basic cho màu đỏ

Trang 2
(A) - vbRed (B) - Property,object, value
(B) - conRed (C) - Object, method, property
(C) - Red (D) - Method, event, property
(D) - 65280
31 - Khi bạn lưu trữ công viê ̣c của mình trong VBA, bạn sẽ tạo
21 - Cácphát biểu sau về Visual Basic for Applications đều mới mô ̣t file dự án (project - *.vbp) để lưu trữ tất cả các
đúng, ngoại trừ mô ̣t phát biểu. Cái nào? mã lê ̣nh và các form
(A) - VBA cho phép người phát triển xây dựng ứng dụng hoạt (A) - True
đô ̣ng đô ̣c lâ ̣p (stand-alone executable applications). (B) - False
(B) - VBA gồm nhiều ứng dụng, như là các sản phẩm của
32 - Người xác định dòng chảy chương trình trong mô ̣t giải
Microsoft Office.
pháp VBA
(C) - VBA được liên kết vào ArcMap và ArcCatalog.
(A) - Người phát triển ứng dụng
(D) - VBA chia xẻ các cú phá lâ ̣p trình tương tự như Visual
Basic. (B) - Tự bản thân chương trình
(C) - Người sử dụng chương trình
22 - Các hằng số được định nghĩa trước bởi Visual Basic, bạn (D) - Hảng Microsoft
không cần phải tạo mới.
(A) - True 33 - Trong câu lê ̣nh Select Case, danh sách giá trị chứa các giá
(B) - False
trị chuỗi, các chuỗi sẽ phân biê ̣t chữ HOA và chữ thường.
(A) - True
23 - Bạn có thể thay đổi thuô ̣c tính của ô điều khiển bằng cửa sổ (B) - False
Properties window trong thời điểm design time và run
time. 34 - Vòng lă ̣p For Next chỉ có thể có biến đếm tăng dần
(A) - True (A) - True
(B) - False (B) - False

24 - Các chú thích nên đă ̣t trước đoạn lê ̣nh mà nó ghi chú 35 - Cấu trúc lă ̣p Do Loop .... While thực hiê ̣n viê ̣c kiểm tra
(A) - True biểu thức điều kiê ̣n
(B) - False (A) - Không kiểm tra
(B) - Kiểm tra ở cuối vòng lă ̣p
25 - Khi mô ̣t phương thức trả về mô ̣t giá trị, bạn phải , you must (C) - Kiểm tra ở giữa vòng lă ̣p
surround the parameters with parentheses.
(D) - Kiểm tra ở đầu vòng lă ̣p
(A) - True
(B) - False 36 - Cấu trúc lă ̣p Do…Loop Until tiếp tục thực hiê ̣n khi biểu
thức điều kiê ̣n là ______.
26 - Sau đây là các hàm nô ̣i tại của VBA, ngoại trừ mô ̣t hàm. (A) - True
Cái nào?
(B) - False
(A) - Today
(B) - InputBox 37 - Khi không có phần tử được chọn trong ô điều khiển List
(C) - Now Box thì giá trị của thuô ̣c tính ListIndex là _____.
(D) - Sin (A) - null
(B) - -1
27 - Visual Basic được phát triển dựa trên ngôn ngữ nào? (C) - 0
(A) - C (D) - 1
(B) - BASIC
(C) - FORTRAN 38 - Hàm InputBox cần phải có 3 đối số.
(D) - C++ (A) - True
(B) - False
28 - Tấtcả các câu lê ̣nh đền trả về giá trị
(A) - True 39 - Đoạn lê ̣nh sau đây, vòng lă ̣p sẽ thực hiê ̣n bao nhiêu lần?
(B) - False I=0
Do While I <= 100
29 - Ngôn ngữ lâ ̣p trình Visual Basic là dạng ngôn ngữ: I=I+1
(A) - Hướng đối tượng Loop
(B) - Hướng sự kiê ̣n (A) - 0
(C) - Cả hướng đối tượng và hướng sự kiê ̣n (B) - 99
(D) - Không có hướng đối tượng kể cả hướng sự kiê ̣n (C) - 100
(D) - 101
30 - Trong dòng lê ̣nh sau đây, Text1 là ____, Text là ____, và
"Hello World!" là ____. 40 - Hô ̣p Message boxes thường được dùng để cung cấp thông
Text1.Text = "Hello World!" tin cho người sử dụng; vì vâ ̣y nó không trả về giá trị.
(A) - Object, property, value (A) - True

Trang 3
(B) - False 50 - Đoạn lê ̣nh sau, vòng lă ̣p sẽ thực hiê ̣n lă ̣p bao nhiêu lần?
I=0
41 - Ký tự nào sau đây dùng để ghép nối 2 chuỗi?
Do While I <= 100
(A) - "+" I=j+1
(B) - Cả “+” và "&", nhưng "+" thì thường dùng hơn Loop
(C) - Cả "+" và "&", nhưng "&" thì thường dùng hơn (A) - 0
(D) - "&" (B) - 99
(C) - 100
42 - Để thoát khỏi vòng lă ̣p For ... Next trước khi nó hoàn
(D) - Vòng lă ̣p vô định
thành, bạn dùng lê ̣nh____
(A) - Exit 51 - Để thoát khỏi vòng lă ̣p Do While...Loop trước khi nó hoàn
(B) - End thành , bạn dùng _______?
(C) - Exit Sub (A) - Exit Sub
(D) - Exit For (B) - Exit While
(C) - Exit
43 - Phátbiểu End If luôn cần thiết để kết thúc câu lê ̣nh IF
(D) - Exit Do
THEN.
(A) - True 52 - Vòng lă ̣p Do…Loop Until tiếp tục thực hiê ̣n khi biểu thức
(B) - False điều kiê ̣n ______.
(A) - True
44 - Trong cấu trúc lă ̣p For Next, biến đếm của vòng lă ̣p không
(B) - False
cần phải sử dụng bên trong vòng lă ̣p.
(A) - True 53 - Đoạn lê ̣nh nào sau đây lấy chỉ số của phần tử được chọn
(B) - False trong điều khiển ListBox tên là lstCities?
(A) - lstCities.Number
45 - Nếu bạn muốn phát biểu lê ̣nh bên trong vòng lă ̣p thực hiê ̣n
(B) - lstCities.ListIndex
ít nhất mô ̣t lần thì bạn nên dùng _____
(C) - lstCities.Index
(A) - Do…Loop While
(D) - lstCities.List
(B) - Exit Do
(C) - Do Loop 54 - Cấu trúc lă ̣p Do...Loop While thực hiê ̣n viê ̣c kiểm tra biểu
(D) - Do While…Loop thức điều kiê ̣n _________
(A) - Nó không kiểm tra
46 - Câu lê ̣nh nào sau đây sẽ cho biết số phần tử trong hô ̣p điều
(B) - Kiểm tra bên trong vòng lă ̣p
khiển listbox tên là lstCities?
(C) - Kiểm tra ở đầu vòng lă ̣p
(A) - lstCities.Count
(D) - Kiểm tra ở cuối vòng lă ̣p
(B) - lstCities.Item
(C) - lstCities.List 55 - Dòng lê ̣nh nào sau đây hiển thị hô ̣p Message Box với tiêu
(D) - lstCities.ListCount đề "Save" và thông báo kiểm tra xem người dùng có
muốn lưu hay không?
47 - Khi bạn cần chọn lựa ______ khả năng, cấu trúc Select
(A) - MsgBox(vbYesNo, "Do you want to save the change?",
Case sẽ là giải pháp tốt nhất
"Save")
(A) - Mô ̣t
(B) - MsgBox("Save", "Do you want to save the change?",
(B) - Hai vbYesNo)
(C) - Ba (C) - MsgBox("Do you want to save the change?", "Save",
(D) - Bốn vbYesNo)
(D) - MsgBox("Do you want to save the change?", vbYesNo,
48 - Nếu bạn muốn lấy giá trị phần tử đầu tiên trong hô ̣p điều "Save")
khiển ListBox tên là lstCities, đoạn lê ̣nh nào sẽ sử dụng?
(A) - lstCities.ListIndex(1) 56 - Cấu trúc Do…Loop Until tiếp tục thực hiê ̣n khi biểu thức
(B) - lstCities.ListIndex(0) điều kiê ̣n ______.
(C) - lstCities.List(1) (A) - True
(D) - lstCities.List(0) (B) - False

49 - Dòng lê ̣nh nào sau đây hiển thị hô ̣p inputbox với tiêu đề 57 - Cấu trúc Do While...Loop tiếp tục thực hiê ̣n khi biểu thức
"User Input" và mô ̣t thông báo yêu cầu người dùng nhâ ̣p điều kiê ̣n là _______
tuổi, và hiển thị tuổi mă ̣c định được nhâ ̣p là 21? (A) - True
(A) - InputBox("Please enter your age:", vbOKCancel, "User (B) - False
Input", 21)
58 - Các lê ̣nh viết trong standard modules thì bao gồm các thủ
(B) - InputBox("Please enter your age", 21, "User Input")
tục tổng quát và thủ tục sự kiê ̣n.
(C) - InputBox("Please enter your age", "User Input", 21)
(A) - True
(D) - InputBox("User Input", "Please enter your age", "21")
(B) - False

Trang 4
59 - Để thi hành mô ̣t sub procedure, bạn gọi nó với câu lê ̣nh (A) - CLng
Call. (B) - CLong
(A) - True (C) - CStr
(B) - False (D) - CSt

60 - Phátbiểu nào sau đây là đúng nhất? 68 - Bạn có thể thi hành mô ̣t macro bằng cách tạo mới mô ̣t nút
(A) - Visual Basic có 3 kiểu procedures cơ bản: event, sub, và lê ̣nh hay mô ̣t mục trên thanh trình đơn trên giao diê ̣nb
property procedures. tương tác trong hô ̣p thoại Customize.
(B) - Visual Basic có 3 kiểu procedures cơ bản: event, (A) - True
general, and sub procedures. (B) - False
(C) - Visual Basic có 3 kiểu procedures cơ bản: event, sub,
and function procedures. 69 - General procedures chỉ có thể tạo trên standard modules.
(D) - Visual Basic có 3 kiểu procedures cơ bản: event, (A) - True
general, and property procedures. (B) - False

61 - Standard modules có thể có event procedures. 70 - Khi xây dựng chương trình con (Sub Rountine), nếu bạn
(A) - True không chỉ định cụ thể tham số hình thức với các từ khóa
ByVal hay ByRef thì mă ̣c định tham số đó sẽ được
(B) - False
truyền theo kiểu tham trị.
62 - Kiểu dữ liê ̣u nào sau đây được dùng để chứa giá trị 14678? (A) - True
(A) - String (B) - False
(B) - Integer
71 - Khi mới được khởi tạo, Visual Basic tự đô ̣ng câ ̣p nhâ ̣t các
(C) - Boolean
biến kiểu số với giá trị _________
(D) - Byte
(A) - 0
63 - Hàm xử lý chuỗi cơ bản là ________ (B) - 1
(A) - Weekday (C) - Empty string
(B) - Abs (D) - Empty
(C) - Len
72 - Để gọi thực hiê ̣n mô ̣t thủ tục từ bên ngoài standard module,
(D) - Rnd bạn phải tham chiếu đến tên của thủ tục, và tên của
module như là mô ̣t tiếp đầu ngữ.
64 - Khi mới tạo, Visual Basic tự đô ̣ng câ ̣p nhâ ̣t giá trị cho biến
kiểu chuỗi là ________ (A) - True
(B) - False
(A) - 0
(B) - 1 73 - Với các thủ tục trên standard module, để tham chiếu đến
(C) - Empty string các điều khiển trên form không nên tham chiếu trực tiếp
(D) - Empty mà nên sử dụng như là các đối số (tham số)
(A) - True
65 - Xem sub procedure được định nghĩa sau:
(B) - False
Private Sub ProcA (ByRef intY As Integer)
intY = 5 74 - Thủ
tục ProcedureA được định nghĩa sau:
End Sub Private Sub ProcedureA (X As Long)
̣ nh sau
Thủ tục này được gọi bởi dòng lê MsgBox X
Dim X As Integer End Sub
X=6
Call ProcA(X) Câu lê ̣nh nào sau đây bạn dùng để gọi thủ tục ProcedureA?
MsgBox "X = " & X (A) - Call ProcedureA(Y)
̣ p message box?
Giá trị của X được hiển thị tren hô (B) - Call ProcedureA
(A) - 4 (C) - ProcedureA
(B) - 5 (D) - ProcedureA(Y)
(C) - 6
(D) - 7 75 - Khi gọi sử dụng từ mô ̣t module khác, các biến toàn cục
trong standard module không cần phải chỉ rỏ tên module,
66 - Câu lê ̣nh nào sau đây trả về chuỗi định danh ứng dụng mà trong khi các biến khai báo toàn cục trên form thì cần
bạn hiê ̣n đang sử dụng? phải chỉ rỏ tên form như là tiếp đầu ngữ.
(A) - strApp = Application.Caption (A) - True
(B) - strApp = ThisDocument.Title (B) - False
(C) - strApp = Application.Name
76 - Để gọi thực hiê ̣n mô ̣t hàm (a function procedure), bạn dùng
(D) - strApp = ThisDocument.Type phát biểu Call.
67 - Hàmnào chuyển đổi giá trị kiểu chuỗi sang giá trị số (A) - True
nguyên lớn? (B) - False

Trang 5
77 - Mô ̣t thủ tục tổng quát luôn luôn yêu cầu mô ̣t hay nhiều đối 85 - Application là biến tham chiếu đến tài liê ̣u mà ban đang
số (tham số). mở ra sử dụng (e.g., for ArcMap, Normal.mxt, base
(A) - True template, hay map document).
(B) - False (A) - True
(B) - False
78 - Các phát biểu sau đây về ThisDocument modules đều
đúng, ngoại trừ _____ 86 - Khi bạn muốn viết mô ̣t thủ tục sẽ được sử dụng trên nhiều
(A) - Các thủ tục sự kiê ̣n (Event procedures) cho các form khác nhau, loại module nào bạn sẽ dùng _____?
UIControl thì được tìm thấy trong ThisDocument (A) - ThisDocument module
module. (B) - Form module
(B) - Từ ThisDocument, bạn có thể gọi các thủ tục khác trên (C) - Standard module
form hay standard modules. (D) - Class module
(C) - Luôn luôn có ba ThisDocument modules khi viết lê ̣nh
trong ArcMap. 87 - Mảng có các phần tử cùng kiểu dữ liê ̣u.
(D) - Bằng cách viết lê ̣nh trong ThisDocument module, bạn (A) - True
cũng đã giới hạn tầm hoạt đô ̣ng của các lê ̣nh. (B) - False

79 - Để tạo mô ̣t số ngẫu nhiêu trong phạm vi từ 1 đến 10, bạn 88 - Trong mảng 2 chiều,chiều thứ nhất là các dòng, và chiều
dùng lê ̣nh _____ thứ hai là các cô ̣t.
(A) - Int((10 – 0 +1)*Rnd + 0) (A) - True
(B) - Int((10 – 1 +1)*Rnd + 1) (B) - False
(C) - Int((10 – 0 +1)*Rnd + 1)
89 - Mảng thứ hai trong mảng 2 chiều có số phần tử cố định sẽ
(D) - Int((10 – 1)*Rnd + 1)
xác định số phần tử trong mảng
80 - Khi bạn muốn bảo vê ̣ giá trị của mô ̣t biến và bạn không (A) - True
muốn thủ tục khác làm thay đổi giá trị đó, Bạn sẽ làm gì? (B) - False
(A) - Khai báo biến như là biến toàn cục với từ khóa Public
trong phân đoạn General Declarations section. 90 - Mảng hai chiều có thể chứa đựng hai, hay nhiều hơn, các
(B) - Khai báo biến là biến cục bô ̣ trên module với từ khóa
thuô ̣c tính của mỗi phần tử trong mảng.
Private trong phân đoạn General Declarations section. (A) - True
(C) - Khai báo biến cục bô ̣ với từ khóa Dim bên trong thủ tục. (B) - False
(D) - Khai báo biến là mô ̣t biến tĩnh với từ khóa Static
statement bên trong thủ tục.
91 - My1DFixedArray được định nghĩa sau đây. Mă ̣c định thì
81 - Module nào bạn sẽ tìm các thủ tục sự kiê ̣n của mô ̣t global mảng có thể chứa đựng bao nhiêu phần tử?
ArcMap UIControl?
Dim My1DFixedArray(5) As String
(A) - ThisDocument cho Normal.gxt
(A) - 4
(B) - ThisDocument cho Normal.mxt
(B) - 5
(C) - ThisDocument cho base template
(C) - 6
(D) - ThisDocument cho map document
(D) - 7
82 - Phátbiểu nào sau đây đúng nhất?
92 - Giá trị vbModal được truyền vào phương thức Show trên
(A) - Thủ tục thì trả về giá trị, trong khi hàm thì không. form cho phép người dùng chuyển qua form khác hay hô ̣p
(B) - Hàm thì trả về giá trị, trong khi thủ tục thì không. thoại khác.
(C) - Thủ tục thì càn khai báo kiểu dữ kiê ̣u, trong khi hàm thì (A) - True
không cần.
(B) - False
(D) - Cả thủ tục và hàm đều cần khai báo kiểu dữ liê ̣u.
93 - Làm thế nào bạn có thể làm tăng kích thước của mảng tên
83 - Khi mô ̣t biến có thể chứa đựng giá trị nguyên trong phạm là MyDynArray thêm mô ̣t phần tử trong khi không biết số
vi từ 1-100, kiểu dữ liê ̣u nào bạn sẽ dùng sao cho kích phần tử hiê ̣n tại??
thước lưu trữ là bé nhất?
(A) - ReDim Preserve MyDynArray(UBound(MyDynArray)
(A) - Integer + 1)
(B) - String (B) - ReDim MyDynArray(UBound(MyDynArray + 1) )
(C) - Boolean (C) - ReDim MyDynArray(UBound(MyDynArray) + 1)
(D) - Byte (D) - ReDim Preserve MyDynArray(UBound(MyDynArray +
1) )
84 - Cáinào sau đây cho phép bạn có thể tạo giao diê ̣n với
người dùng và phản hồi, tương tác với người sử dụng? 94 - Làm thế nào bạn tham chiếu đến thuô ̣c tính thứ hai của
(A) - Class module phần tử thứ nhất trong mảng hai chiều có tên là Entry?
(B) - Form module (A) - Entry(2,1)
(C) - ThisDocument module (B) - Entry(1,2)
(D) - Standard module

Trang 6
(C) - Entry(1,0) (B) - Integer
(D) - Entry(0,1) (C) - String
(D) - Variant
95 - Để thêm mô ̣t phần tử vào tâ ̣p hợp (Collection), bạn dùng
phương thức AddItem. 100 - Kiểmtra đoạn lê ̣nh sau có bao nhiêu lỗi?
(A) - True Private Sub drvFile_Change()
(B) - False On Error GoTo CheckDrive
dirFile.Path = drvFile.Drive
96 - Ngầm định, chỉ số của tâ ̣p hợp sẽ bắt đầu là 0 (zero). MsgBox "Program Continues..."
(A) - True Error handler
(B) - False CheckDive
If Err.Number = 68 Then
97 - Khi thêm phần tử vào tâ ̣p hợp, bạn chỉ có thể thêm vào MsgBox "The selected disk is unavailable"
cuối tâ ̣p hợp Resume Next
(A) - True Else
(B) - False MsgBox "Error, " & Err.Description
Exit Sub
98 - Câu lê ̣nh nào sau đây sẽ xóa tâ ̣p hợp có tên MyCollection End If
ra khỏi bô ̣ nhớ? End Sub
(A) - MyCollection = Nothing
(B) - Set MyCollection = Nothing (A) - 0
(C) - MyCollection.Remove All (B) - 1
(D) - Dim MyCollection As New Collection (C) - 2
(D) - 3
99 - Khi dùng cấu trúc lă ̣p For Each Next để duyê ̣t qua tâ ̣p hợp,
bạn phải dùng biến để đại diê ̣n cho từng phần tử trong tâ ̣p 7
hợp. Kiểu dữ liê ̣u nào mà biến đó nên dùng? 7777777777777777777777777777777777777777777777
777777777777777777777777777777777
(A) - Long

Trang 7
- Hết -

Trưởng Bô ̣ Môn Giáo viên ra đề

Văn Công Đức

Trang 8

You might also like