SỞ GIÁO DỤC VÀ ĐÀO TẠO TỈNH NINH THUÂN<br />
<br />
ĐỀ KIỂM TRA HỌC KỲ II LỚP 11<br />
<br />
TRƯỜNG THPT CHUYÊN LÊ QUÝ ĐÔN<br />
<br />
NĂM HỌC 2014 - 2015<br />
MÔN TIN HOC (Chương trình chuẩn)<br />
Thời gian làm bài: 45 phút<br />
<br />
MA TRẬN ĐỀ<br />
<br />
Chủ đề - Mạch kiến<br />
thức, kĩ năng.<br />
<br />
1<br />
3 câu<br />
<br />
Mức nhận thức<br />
2<br />
3<br />
3 câu<br />
3 câu<br />
<br />
Cộng<br />
4<br />
9 câu<br />
<br />
Kiểu tệp<br />
Chương trình con<br />
Tổng<br />
<br />
1.0 đ<br />
1.0 đ<br />
9 câu<br />
6 câu<br />
<br />
1.0 đ<br />
6 câu<br />
<br />
3.0 đ<br />
21 câu<br />
<br />
3.0 đ<br />
2.0 đ<br />
2.0 đ<br />
7.0 đ<br />
12 câu<br />
9 câu<br />
3 câu<br />
6 câu<br />
30 câu<br />
4.0đ<br />
3.0đ<br />
1.0 đ<br />
2.0 đ<br />
10.0đ<br />
<br />
Trang 1/20<br />
<br />
SỞ GIÁO DỤC VÀ ĐÀO TẠO TỈNH NINH THUÂN<br />
<br />
ĐỀ KIỂM TRA HỌC KỲ II LỚP 11<br />
<br />
TRƯỜNG THPT CHUYÊN LÊ QUÝ ĐÔN<br />
<br />
NĂM HỌC 2014 - 2015<br />
MÔN TIN HOC (Chương trình chuẩn)<br />
Thời gian làm bài: 45 phút<br />
ĐỀ 1<br />
<br />
Câu 1: Hàm nào sau đây là đúng để tính an ?<br />
A. Function luy_thua(a,n);<br />
B. Function luy_thua(a,n:integer):integer;<br />
var tich, i : integer;<br />
var tich, i : integer;<br />
begin<br />
begin<br />
for i:=1 to n do tich:= tich* a;<br />
for i:=1 to n do tich:= tich* a;<br />
luy_thua:=tich;<br />
luy_thua:=tich;<br />
end;<br />
end;<br />
C. Function luy_thua(a,n):integer;<br />
D. Function luy_thua(a,n: integer);<br />
var tich, i : integer;<br />
var tich, i : integer;<br />
begin<br />
begin<br />
for i:=1 to n do tich:= tich* a;<br />
for i:=1 to n do tich:= tich* a;<br />
luy_thua:=tich;<br />
luy_thua:=tich;<br />
end;<br />
end;<br />
Cho chương trình:<br />
VAR x , y , b : integer;<br />
FUNCTION bai1(var a : integer):integer;<br />
Var z : integer;<br />
Begin<br />
y := 7; x := x * 2; a := a * 2; z := 1; z := a;<br />
bai1:=z;<br />
End;<br />
BEGIN<br />
x := 1; y := 2; b:=0;<br />
b := bai1(x);<br />
END.<br />
Câu 2: x , y trong chương trình trên được gọi là:<br />
A. Biến toàn cục<br />
B. Tham số thực sự<br />
C. Biến cục bộ<br />
D. Tham số hình thức<br />
Câu 3: Trong chương trình trên, khi thực hiện gọi chương trình con bai1(x), x được gọi là:<br />
A. Tham số hình thức B. Tham số thực sự<br />
C. Tham số cục bộ<br />
D. Tham số toàn cục<br />
Câu 4: z trong chương trình trên được gọi là:<br />
A. Tham số hình thức B. Biến toàn cục<br />
C. Biến cục bộ<br />
D. Tham số thực sự<br />
Câu 5: Trong chương trình trên a được gọi là:<br />
A. Biến toàn cục<br />
B. Tham số thực sự<br />
C. Biến cục bộ<br />
D. Tham số hình thức<br />
Câu 6: Muốn khai báo x là tham số trị, y là tham số biến (x, y thuộc kiểu Integer) trong thủ tục có tên là “Tinh”<br />
thì khai báo nào sau đây là đúng?<br />
A. Procedure Tinh(x, y : integer);<br />
B. Procedure Tinh( Var x, y : integer);<br />
C. Procedure Tinh( Var x : integer ; y : integer); D. Procedure Tinh( Var y : integer ; x : integer);<br />
Câu 7: Xét chương trình sau:<br />
Var f: text;<br />
Begin<br />
Assign(f, ‘A.OUT’); Rewrite(f);<br />
Write(f, 15+20-25);<br />
Close(f);<br />
Trang 2/20<br />
<br />
End.<br />
Sau khi thực hiện chương trình, tệp ‘A.OUT’ có nội dung như thế nào?<br />
A. 15 20 25<br />
B. 10<br />
C. 15+20-25<br />
D. 152025<br />
Câu 8: Cho chương trình:<br />
VAR a : integer;<br />
PROCEDURE nhap(x : integer);<br />
Begin<br />
x:=1; End;<br />
BEGIN<br />
a:=2;<br />
nhap;<br />
END.<br />
Sau khi thực thi chương trình:<br />
A. a = 1<br />
B. a = 2<br />
C. Lỗi cú pháp<br />
D. Tất cả đều sai<br />
Câu 9: Cho chương trình:<br />
VAR a,b,s : integer;<br />
PROCEDURE tong(x,y : integer);<br />
Begin<br />
s:=x+y; End;<br />
BEGIN<br />
a:=2;b:=1;s:=0;<br />
tong(a,b);<br />
END.<br />
Sau khi thực thi chương trình:<br />
A. Lỗi cú pháp<br />
B. a = 2, b = 1, s = 3<br />
C. a = 2, b = 1, s = 0<br />
D. Tất cả đều sai<br />
Câu 10: Thủ tục nào sau đây dùng để hoán đổi giá trị của hai biến kiểu số nguyên?<br />
A. Procedure Hoan_doi ( a : integer ; Var b: integer);<br />
B. Procedure Hoan_doi ( Var a, b : integer );<br />
Var t : integer ;<br />
Var t : integer ;<br />
Begin t := a ; a:= b ; b:= t ; end;<br />
Begin t := a ; a:= b ; b:= t ; end;<br />
C. Procedure Hoan_doi ( Var a : integer ; b : integer );<br />
D. Procedure Hoan_doi ( a, b : integer );<br />
Var t : integer ;<br />
Var t : integer ;<br />
Begin t := a ; a:= b ; b:= t ; end;<br />
Begin t := a ; a:= b ; b:= t ; end;<br />
Câu 11: Cho chương trình:<br />
VAR a,b : integer;<br />
PROCEDURE Tinh;<br />
var b:integer;<br />
Begin<br />
a:=5; a:=a+7; b:=a; End;<br />
BEGIN<br />
a:=1; b:=1;<br />
bai5;<br />
END.<br />
Sau khi thực thi chương trình:<br />
A. a = 5, b = 1<br />
B. a = 1, b = 12<br />
C. a = 12, b = 1<br />
D. a = 12, b = 12<br />
Câu 12: Sự khác nhau giữa tham biến và tham trị trong khai báo của chương trình con là :<br />
A. Tham trị phải có từ khóa Var đứng trước<br />
B. Không có sự khác nhau<br />
C. Giống sự khác nhau giữa biến toàn cục và biến cục bộ<br />
D. Tham biến phải có từ khóa Var đứng trước<br />
<br />
Trang 3/20<br />
<br />
Câu 13: Biến cục bộ là:<br />
A. Biến khai báo để dùng riêng trong chương trình con.<br />
B. Biến khai báo để dùng riêng trong chương trình con thủ tục.<br />
C. Biến khai báo để dùng riêng trong chương trình con hàm.<br />
D. Biến được khai báo trong phần khai báo của chương trình chính.<br />
Câu 14: Cho chương trình:<br />
VAR a,b,h : integer;<br />
PROCEDURE hieu;<br />
Begin<br />
h:=a-b; End;<br />
BEGIN<br />
a:=1; b:=2;h:=0;<br />
hieu;<br />
END.<br />
Sau khi thực thi chương trình:<br />
A. h = 2<br />
B. h = 0<br />
C. h = 1<br />
D. h= -1<br />
Câu 15: Chương trình con là:<br />
A. Chương trình được xây dựng từ các chương trình con khác.<br />
B. Một dãy lệnh mô tả một số thao tác nhất định nhưng không trả về một giá trị qua tên của nó.<br />
C. Một dãy lệnh mô tả một số thao tác nhất định và trả về một giá trị qua tên của nó.<br />
D. Một dãy lệnh mô tả một số thao tác nhất định và có thể được thực hiện (được gọi) từ nhiều vị trí trong<br />
chương trình.<br />
Câu 16: Phát biểu nào sau đây là sai về chương trình con?<br />
A. Phần khai báo có thể có hoặc không có tùy thuộc vào từng chương trình cụ thể.<br />
B. Phần đầu nhất thiết phải có để khai báo tên chương trình con<br />
C. Phần đầu có thể có hoặc không có.<br />
D. Phần đầu và phần thân nhất thiết phải có, phần khai báo có thể có hoặc không.<br />
Câu 17: Xét chương trình sau:<br />
Var i: intger;<br />
f: text;<br />
Begin<br />
Assign(f, ‘A.OUT’); Rewrite(f);<br />
i:= 12345;<br />
Writeln(f,i); Write(f, -321);<br />
Close(f);<br />
End.<br />
Sau khi thực hiện chương trình, tệp ‘A.OUT’ có nội dung như thế nào?<br />
A. 12345-321<br />
B. 12024<br />
C. 12345<br />
D. Cả A, B, C đều sai.<br />
-321<br />
Câu 18: Giả sử ta có hàm Max(A, B : integer) : Integer; để tìm số lớn hơn trong hai số A và B. Cần sử dụng<br />
hàm Max trên như thế nào để tìm được số lớn nhất trong ba số A, B, C ?<br />
A. Max(Max(A,B), C); B. Max(Max(A,B); C); C. Max(A; B; C);<br />
D. Max( A, B, C);<br />
Câu 19: Biến toàn cục là:<br />
A. Biến khai báo để dùng riêng trong chương trình con thủ tục.<br />
B. Biến khai báo để dùng riêng trong chương trình con.<br />
C. Biến khai báo để dùng riêng trong chương trình con hàm.<br />
D. Biến được khai báo trong phần khai báo của chương trình chính.<br />
Câu 20: Thủ tục đóng tệp có dạng:<br />
A. Close All;<br />
B. Close;<br />
C. Close(); D. Close();<br />
Câu 21: Để gán tên tệp cho biến tệp ta sử dụng câu lệnh:<br />
A. assign(, );<br />
B. assign(, );<br />
C. := ;<br />
D. := ;<br />
Câu 22: Giả sử ta có hàm Max(A, B : integer) : Integer; để tìm số lớn hơn trong hai số A và B. Cần sử dụng<br />
hàm Max trên như thế nào để tìm được số lớn nhất trong bốn số A, B, C, D ?<br />
A. Max(Max(A,B); Max(C,D)); B. Max(A; B; C; D); C. Max(Max(A,B), Max(C,D)); D. Max( A, B, C, D);<br />
Câu 23: Khi tiến hành mở tệp để đọc mà không tìm thấy tệp thì:<br />
Trang 4/20<br />
<br />
A. Tệp sẽ được tạo ra với nội dung toàn ký tự trống.<br />
B. Tệp sẽ được tạo ra với nội dung rỗng.<br />
C. Tệp sẽ được tạo ra với nội dung toàn ký tự đặc biệt. D. Báo lỗi vì không thực hiện được.<br />
Câu 24: Trong Pascal, để khai báo hai biến tệp văn bản f1, f2 ta viết:<br />
A. Var f1, f2 : text;<br />
B. Var f1. txt; f2. txt; C. Var f1, f2 : txt;<br />
D. Var f1. txt, f2. txt ;<br />
Câu 25: Xét chương trình sau:<br />
Var a, b: integer;<br />
f: text;<br />
begin<br />
Assign(f, ‘A.OUT’);<br />
Rewrite(f);<br />
a:= 12345;<br />
b:=345;<br />
Write(f,a-b);<br />
Close(f);<br />
End.<br />
Sau khi thực hiện chương trình, tệp ‘A.OUT’ có nội dung như thế nào?<br />
A. 12000<br />
B. 12345345<br />
C. 12345-345<br />
D. Cả A, B, C đều sai.<br />
Câu 26: Trong Pascal, để khai báo biến tệp văn bản ta sử dụng cú pháp:<br />
A. Var : text; B. Var : string; C. Var : text; D. Var : string;<br />
Câu 27: Xét chương trình sau:<br />
Var<br />
i: integer;<br />
f: Text;<br />
Begin<br />
Assign(f,’ TINH.TXT’); Rewrite(f);<br />
i:=1234;<br />
Write(f, i);<br />
Write(f, -56);<br />
Close(f);<br />
End.<br />
Sau khi thực hiện chương trình, tệp TINH.TXT có nội dung như thế nào?<br />
A. 1234<br />
B. 1234-56<br />
C. 1234<br />
D. Tất cả A, B, C đều sai.<br />
56<br />
-56<br />
Câu 28: Cho chương trình:<br />
VAR a,b,c : integer;<br />
PROCEDURE Tinh (x:integer ; var y : integer ; z:integer);<br />
Begin<br />
x:=x+1; y:=a+1; z:=x+y+z; End;<br />
BEGIN<br />
a:=1; b:=1; c:=1;<br />
Tinh(a,b,c);<br />
END.<br />
Sau khi thực thi chương trình:<br />
A. a = 1, b = 2, c = 1<br />
B. a = 2, b = 1, c = 5<br />
C. a = 1, b = 1, c = 1<br />
D. a = 1, b = 2, c = 5<br />
Câu 29: Sau khi làm việc xong với tệp cần phải đóng tệp vì:<br />
A. Việc đóng tệp là đặc biệt quan trọng sau khi ghi dữ liệu, khi đó hệ thống mới thực sự hoàn tất việc ghi dữ<br />
liệu ra tệp.<br />
B. Nếu không đóng tệp thì tệp đó sẽ bị xóa mất.<br />
C. Nếu không đóng tệp hệ thống sẽ báo lỗi;<br />
D. Cả A, B, C đều sai.<br />
Câu 30: Cho chương trình:<br />
VAR a,b : integer;<br />
PROCEDURE Bai(x,y:integer);<br />
var a:integer;<br />
Begin<br />
a:=5; x:=a+1; y:=x*5; End;<br />
BEGIN<br />
a:=1; b:=1;<br />
Bai(a,b);<br />
END.<br />
Sau khi thực thi chương trình:<br />
A. a = 1, b = 10<br />
B. a = 2, b = 10<br />
C. a = 5, b = 10<br />
D. a = 1, b = 1<br />
------------------------ HẾT ----------<br />
<br />
Trang 5/20<br />
<br />