Lớp: STT: Họ và tên: KIỂM TRA 1 TIẾT LẦN 2 MÔN TIN HỌC 11. I. TRẮC NGHIỆM (4 ĐIỂM) 1. Trong một chương trình, tham số thực sự (nếu có) thường sẽ gặp ở: A. Lời gọi thực hiện chương trình con. B. Phần khai báo của chương trình chính. C. Phần khai báo của chương trình con. D. Phần đầu của chương trình con. 2. Trong các đoạn chương trình sau, đoạn nào là một thủ tục đúng để in ra dòng chữ “Welcome to Pascal” ? A. Procedure Welcome to Pascal; Begin Writeln(’Welcome’); End; B. Procedure Welcome; Begin Writeln(’Welcome to Pascal’); End; C. Procedure Welcome Begin Writeln(“Welcome to Pascal”); End; D. Procedure Welcome; Begin Welcome to Pascal; End; 3. Program Tham_so; Var a, b: integer; Procedure Nhan_biet_ts(x: integer; var y: integer); begin x:=x-1; y:=y-1; writeln(x: 6; y: 6); end; Begin a:=1; b:=4; ………………?………………… writeln(a: 6; b: 6); End. 3. 1) Câu lệnh điền vào (…? ) để gọi chương trình con Nhan_biet_ts cho 2 biến a và b là: A. Nhan_biet_ts; B. Nhan_biet_ts(a,b); C. Nhanbietts(a,b); D. Writeln(Nhan_biet_ts(a,b)); 3. 2). C¸c biÕn x, y lµ c¸c : A. Tham số hình thức B. Tham số thực sự C. Biến toàn cục D. Biến cục bộ 3.3) Tham số biến trong chương trình con trên là: A. a, b. B. x, y C. x D. y 4. Muốn khai báo x, y là tham số giá trị và z là tham số biến (x, y, z thuộc kiểu Byte) trong thủ tục “Max” thì khai báo nào sau đây là đúng? A. Procedure Max(x, Var y: Byte; var z: Byte); B. Procedure Max(x, y: Byte; Var z: Byte); C. Procedure Max(x: Byte; Var y: Byte; var z: Byte); D. function Max(x, y: Byte; var x: Byte); 5. Kiểu dữ liệu của hàm A. chỉ có thể là kiểu integer. C. có thể là các kiểu integer, real, char, boolean, string. B. chỉ có thể là kiểu real. D. có thể là integer, real, char, boolean, string, record, kiểu mảng. 6. Khai báo nào sau đây về phần đầu của hàm là đúng? A. function nhan(x,y: real); B. procedure nhan(x,y: real) : real; C. function nhan(x,y) : real; D. function nhan(x,y: real) : real; 7. Đoạn chương trình sau có lỗi gì? Procedure End (key:char); Begin If key = ’q’ then Writeln(’ket thuc’); End; 8. Để khai báo thủ tục trong Pascal bắt đầu bằng từ khóa A. Program B. Procedure C. Function D. Begin C A. End không thể dùng làm tên của thủ tục B. Thiếu dấu “;” sau từ khóa begin; C. Không thể dùng câu lệnh if trong thủ tục D. Dấu “;” sau End là sai phải là dấu “.” 9. Để khai báo hàm trong Pascal bắt đầu bằng từ khóa A. Program B. Procedure C. Function D. Begin 10. Cho x, y là hai biến nguyên và khai báo thủ tục : Procedure Doicho( Var a : Integer; b : Integer); Var z : Integer; Begin z:=a; a:=b; b:=z; End; -Sau khi thực hiện các lệnh: x:=7; y:=3; Doicho(x, y); thì giá trị của x, y là: A. x=7, y=7 B. x = 3 ; y = 3 ; C. x=3, y=7 D. x=7, y=3 11. Cho khai báo của một hàm: Function F( k : Integer) : String ; Begin If k mod 2=0 then F:=’Chan’ else F:=’Le’; End; 11.1) Muốn gán X:= F(5); thì biến X phải khai báo kiểu gì : A. Var X: Real; B. Var X: string; C. Var X: Integer; D. Var X : Char 11.2) Muốn in Write( F(y) ); thì biến y phải khai báo kiểu gì : A. Var y : Real; B. Var y : String; C. Var y: integer; D. Var y : Char; 12. Cho khai báo biến và khai báo đầu của thủ tục TT: Var x, y : Integer ; St :String ; Procedure TT( Var a : Integer ; b : String); Lệnh nào đúng : A. TT(x +1, St) ; B. TT(10, St) ; C. TT(x, st); D. y:= TT(St, x) ; 13. Cho a là biến nguyên a=3, và khai báo thủ tục: Procedure TT( x : Integer) ; Begin x:=x+2; End; Sau khi gọi thủ tục TT(a); thì Giá trị của biến a là : A. 2 B. 5 C. 3 D. 0 II. TỰ LUẬN (6 ĐIỂM) 1). Chương trình con là gì? Cho ví dụ. (0.75 điểm) 2). a. Thế nào là tham số hình thức? (0.5 điểm) b. Có những loại tham số hình thức nào? Làm cách nào để nhận biết các tham số hình thức? (0.75 điểm) 3). Xác định tính đúng (Đ), sai (S) của các phát biểu sau: (1.0 điểm) a. Cả hàm và thủ tục đều có thể có hoặc không có tham số hình thức. b. Số lượng tham số thực sự trong lời gọi chương trình con phải bằng với số lượng tham số hình thức ở phần khai báo chương trình con. c. Tham số biến không hề bị thay đổi giá trị sau lời gọi chương trình con. d. Kiểu dữ liệu của tham số thực sự không nhất thiết phải tương thích với kiểu dữ liệu của tham số hình thức tương ứng trong phần đầu của chương trình con. 4). a. Hãy viết cấu trúc của thủ tục? (0.75 điểm) b. Xét về mặt cấu trúc thủ tục và hàm có những điểm nào khác nhau. (0.75 điểm) 5). Viết chương trình tìm giá trị nhỏ nhất của 3 số a, b, c là các số nguyên được nhập từ bàn phím. Trong đó có xây dựng và sử dụng hàm tính giá trị nhỏ nhất của 2 số nguyên x, y(x,y là các số nguyên). (1.5 điểm) . th c nào? Làm c ch nào để nhận biết c c tham số hình th c? (0.75 điểm) 3). X c định tính đúng (Đ), sai (S) c a c c phát biểu sau: (1. 0 điểm) a. C hàm và thủ t c đều c thể c ho c không c tham. trình chính. C. Phần khai báo c a chương trình con. D. Phần đầu c a chương trình con. 2. Trong c c đoạn chương trình sau, đoạn nào là một thủ t c đúng để in ra dòng chữ “Welcome to Pascal” ? A KIỂM TRA 1 TIẾT LẦN 2 MÔN TIN H C 11 . I. TR C NGHIỆM (4 ĐIỂM) 1. Trong một chương trình, tham số th c sự (nếu c ) thường sẽ gặp ở: A. Lời gọi th c hiện chương trình con. B. Phần khai báo c a chương