Đề thi Học kì 2 Tin học 11 có đáp án năm 2024 (4 đề)
Đề thi Học kì 2 Tin học 11 có đáp án năm 2024 (4 đề)
Haylamdo biên soạn và sưu tầm Đề thi Học kì 2 Tin học 11 có đáp án năm 2024 (4 đề) được tổng hợp chọn lọc từ đề thi môn Tin học 11 của các trường trên cả nước sẽ giúp học sinh có kế hoạch ôn luyện từ đó đạt điểm cao trong các bài thi Tin học lớp 11.
Phòng Giáo dục và Đào tạo .....
Đề thi Học kì 2
Năm học 2024
Môn: Tin học lớp 11
Thời gian làm bài: 45 phút
(Đề số 1)
Phần I. Trắc nghiệm
Câu 1: Cho đoạn chương trình sau:
s1 := ‘abcd’; s2: ‘acb’;
if s1 > s2 then write(s1) else write(s2);
Kết quả in ra màn hình là:
A. ‘abcd’
B. ‘acb’
C. ‘abcdacb’
D. ‘acbabcd’
Câu 2: Cho s = ‘ABCDEF’, hàm copy (s, 1, 3) cho giá trị là:
A. ‘ABC’
B. ‘BCD’
C. ‘CDE’
D. ‘DEF’
Câu 3: Cho s = ‘Tien hoc le, hau hoc van’, hàm length(s) cho giá trị bằng:
A. 23
B. 24
C. 25
D. 26
Câu 4: Cho đoạn chương trình sau:
s1 := ‘1234’; s2: ‘abcd’;
if length(s1) > length(s2) then write(s1) else write(s2);
Kết quả in ra màn hình là:
A. ‘abcd’
B. ‘1234’
C. ‘abcd1234’
D. ‘1234abcd’
Câu 5: Cho xâu kí tự sau: s:= ‘Truyen Kieu-Nguyen Du’
Lệnh nào sau đây cho kết quả ‘Nguyen Du’
A. copy(s, 1, 11);
B. copy(s, 1, 12);
C. delete(s, 1, 11);
D. delete(s,1, 12);
Câu 6: Cho đoạn chương trình sau:
s1 := ‘123a’; s2 := ‘abcd’;
delete(s1, 1, 3);
write(pos (s1, s2));
Kết quả in ra màn hình là:
A. 1
B. 2
C. 3
D. 4
Câu 7: Khai báo 2 biến xâu a, b nào sau đây là sai:
A. var a, b : string;
B. var a, b : string[15];
C. var a, b : string[25];
D. var a. b : string;
Câu 8: Trong PASCAL, để khai báo hai biến tệp văn bản f1, f2 ta viết:
A. Var f1 , f2 : Text;
B. Var f1. f2 : Text;
C. Var f1 ; f2 : Text;
D. Var f1 : f2 : Text;
Câu 9: Để gắn tệp DL.TXT cho biến tệp f1 ta sử dụng câu lệnh:
A. f1 := ‘DL.TXT’;
B. ‘DL.TXT’ := f1;
C. Assign(f1, ‘DL.TXT’);
D. Assign(‘DL.TXT’, f1);
Câu 10: Câu lệnh mở biến tệp f2 để ghi dữ liệu có dạng:
A. reset(f1);
B. rewrite(f1);
C. read(f1);
D. write(f1);
Câu 11: Để ghi 2 biến CV và DT vào biến tệp f2 ta sử dụng câu lệnh:
A. write(f2, CV, DT);
B. read(f2, CV, DT);
C. writeln(CV, DT, f2);
D. readln(CV, DT, f2);
Câu 12: Để biết con trỏ tệp đã ở cuối tệp f hay chưa, ta sử dụng hàm:
A. eof(f)
B. eoln(f)
C. Cả A, B đều đúng
D. Cả A, B đều sai
Câu 13: Giả sử a = 5; b = 9; c = 15; để ghi các giá trị trên vào tệp f2 có dạng là ta sử dụng câu lệnh:
A. Read(f1, x, y, z);
B. Readln(x, y, z, f1);
C. write(f1, x, y, z);
D. writeln(x, y, z, f1);
Câu 14: Trong lời gọi thủ tục, các tham số hình thức được thay bằng các giá trị cụ thể được gọi là:
A. Tham số giá trị
B. Tham số thực sự
C. Tham số hình thức
D. Tham số biến
Câu 15: Cho đoạn chương trình sau:
Var g:text;
I:integer;
Begin
Assign(g, ‘C:\DLA.txt’);
Rewrite(g);
For i:=1 to 10 do
If i mod 2 = 0 then write(g, i);
Close(g);
Readln
End.
Sau khi thực hiện chương trình trên, nội dung của tệp ‘DLA.txt’ gồm những phần tử nào?
A. 2; 4; 6; 8;10
B. 1; 3; 5; 9
C. 1; 3; 5;7; 9
D. 4; 6; 8;10
Câu 16: Các biến được khai trong chương trình chính được gọi là:
A. Biến cục bộ
B. Biến toàn cục
C. Tham số thực sự
D. Tham số hình thức
Câu 17: Muốn khai báo x là tham số giá trị, y là tham số biến (x, y thuộc kiểu integer) trong thủ tục có tên là “Hoan_doi” thì khai báo nào sau đây là đúng:
A. Procedure Hoan_doi (y : integer; Var x : integer);
B. Procedure Hoan_doi (Var x, y : integer);
C. Procedure Hoan_doi (x : integer; Var y : integer);
D. Procedure Hoan_doi (x, y : integer);
Câu 18: Để phân biệt giữa tham biến và tham trị, trước tham biến người ta dùng từ khoá:
A. Type
B. Var
C. Begin
D. Const
Câu 19: 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 hàm max trên như thế nào để tìm được số lớn nhất trong ba số A, B, C?
A. max(max(A, B),C);
B. max(A; B; c);
C. max(A; max(B, C);
D. max(A, B, C);
Câu 20: Cho chương trình sau:
procedure thutuc (a, b: integer);
Begin
…
End;
Trong chương trình chính có thể gọi lại chương trình con như thế nào:
A. thutuc;
B. thutuc(1, 2, 3);
C. thutuc(5);
D. thutuc (5, 10);
Phần II. Tự luận
Bài 1 . (2 điểm) Viết chương trình:
Đọc từ tệp “DULIEU.TXT” 2 số nguyên M và N (M < N)
Tính tổng các số lẻ trong phạm vi từ M đến N
Ghi kết quả ra tệp “KETQUA.TXT”.
Bài 2. (3 điểm) Cho chương trình sau:
Program Baitap;
Var S1, S2 : string;
Procedure Xu_li_xau(a:string; var St:string);
Var i: byte;
Begin
i := pos (a, St);
while i < > 0 do
begin
delete(St, i, 4);
i := pos(a, St);
end;
End;
Begin
S1 := ‘sen trang, sen hong;
S2 := ‘sen’;
Xu_li_xau(S2,S1);
End.
a/ Hãy chạy tay cho ra kết quả theo bảng mẫu dưới đây:
b/ Hãy chỉ ra: biến toàn cục, biến cục bộ, tham số hình thức, tham số thực sự, tham số biến,tham số giá trị trong chương trình trên.
Đáp án & Thang điểm
Phần I. Trắc nghiệm
Phần II. Tự luận
Bài 1 .
Var f1, f2: text;
Tong, m, n, i: integer;
Begin
assign(f1, ‘DULIEU.TXT’);
reset(f1);
assign(f2, ‘KETQUA’);
rewrite(f2);
Tong;= 0;
read(f1, m, n);
for i:= m to n do
if i mod 2 = 1 then Tong:= Tong+i;
write(f2, Tong);
close(f1);
close(f2);
End.
Bài 2a .
Bài 2b .
Phòng Giáo dục và Đào tạo .....
Đề thi Học kì 2
Năm học 2024
Môn: Tin học lớp 11
Thời gian làm bài: 45 phút
(Đề số 2)
Phần I. Trắc nghiệm
Câu 1: Cho đoạn chương trình sau:
s1 := ‘bbaa’; s2: ‘abcd’;
if s1 > s2 then write(s1) else write(s2);
Kết quả in ra màn hình là:
A. ‘bbaa’
B. ‘abcd’
C. ‘bbaaabcd’
D. ‘abcdbbaa’
Câu 2: Cho s = ‘ABCDEF’, hàm copy (s, 2, 3) cho giá trị là:
A. ‘ABC’
B. ‘BCD’
C. ‘CDE’
D. ‘DEF’
Câu 3: Cho s = ‘Turbo Pascal’, hàm length(s) cho giá trị bằng:
A. 10
B. 11
C. 12
D. 13
Câu 4: Cho đoạn chương trình sau:
s1 := ‘abcd’; s2: ‘abab’;
if length(s1) > length(s2) then write(s1) else write(s2);
Kết quả in ra màn hình là:
A. ‘abcd’
B. ‘abab’
C. ‘abcdabab’
D. ‘abababcd’
Câu 5: Cho xâu kí tự sau: s:= ‘Truyen Kieu-Nguyen Du’
Lệnh nào sau đây cho kết quả ‘Truyen Kieu’
A. copy(s, 1, 11);
B. copy(s, 1, 12);
C. delete(s, 1, 11);
D. delete(s,1, 12);
Câu 6: Cho đoạn chương trình sau:
s1 := ‘123d’; s2 := ‘abcd’;
delete(s1, 1, 3);
write(pos (s1, s2));
Kết quả in ra màn hình là:
A. 1
B. 2
C. 3
D. 4
Câu 7: Khai báo 2 biến xâu a, b nào sau đây là đúng:
A. var a, b : string[275];
B. var a, b : string[27];
C. var a, b = string;
D. var a. b : string;
Câu 8: Trong PASCAL, để khai báo hai biến tệp văn bản f1, f2 ta viết:
A. Var f1. f2 : Text;
B. Var f1 ; f2 : Text;
C. Var f1 , f2 : Text;
D. Var f1 : f2 : Text;
Câu 9: Để gắn tệp KQ.TXT cho biến tệp f2 ta sử dụng câu lệnh:
A. f2 := ‘KQ.TXT’;
B. ‘KQ.TXT’ := f2;
C. Assign(‘KQ.TXT’, f2);
D. Assign(f2, ‘KQ.TXT’);
Câu 10: Câu lệnh mở biến tệp f1 để đọc dữ liệu có dạng:
A. reset(f1);
B. rewrite(f1);
C. read(f1);
D. write(f1);
Câu 11: Để đọc dữ liệu từ biến tệp f1 chứa 2 biến a, b ta sử dụng câu lệnh:
A. read(f1, a, b);
B. write(f1, a, b);
C. readln(a, b, f1);
D. writeln(a, b, f1);
Câu 12: Để biết con trỏ tệp đã ở cuối dòng của tệp f hay chưa, ta sử dụng hàm:
A. eof(f)
B. eoln(f)
C. Cả A, B đều đúng
D. Cả A, B đều sai
Câu 13: Tệp f1 có dữ liệu để đọc 3 giá trị trên tương ứng với 3 biến x, y, z ta sử dụng câu lệnh:
A. Read(f1, x, y, z);
B. Readln(x, y, z, f1);
C. write(f1, x, y, z);
D. writeln(x, y, z, f1);
Câu 14: Trong lời gọi thủ tục, các tham số hình thức được thay bằng các giá trị cụ thể được gọi là:
A. Tham số giá trị
B. Tham số hình thức
C. Tham số biến
D. Tham số thực sự
Câu 15: Cho đoạn chương trình sau:
Var g:text;
I:integer;
Begin
Assign(g, ‘C:\DLA.txt’);
Rewrite(g);
For i:=1 to 10 do
If i mod 2 <> 0 then write(g, i);
Close(g);
Readln
End.
Sau khi thực hiện chương trình trên, nội dung của tệp ‘DLA.txt’ gồm những phần tử nào?
A. 2; 4; 6; 8;10
B. 1; 3; 5; 9
C. 1; 3; 5;7; 9
D. 4; 6; 8;10
Câu 16: Các biến được khai báo dùng riêng cho chương trình con được gọi là:
A. Biến cục bộ
B. Biến toàn cục
C. Tham số thực sự
D. Tham số hình thức
Câu 17: Muốn khai báo x, y là tham số biến (x, y thuộc kiểu integer) trong thủ tục có tên là “Hoan_doi” thì khai báo nào sau đây là đúng:
A. Procedure Hoan_doi (y : integer; Var x : integer);
B. Procedure Hoan_doi (x : integer; Var y : integer);
C. Procedure Hoan_doi (Var x, y : integer);
D. Procedure Hoan_doi (x, y : integer);
Câu 18: Để phân biệt giữa tham biến và tham trị, trước tham biến người ta dùng từ khoá:
A. Var
B. Type
C. Begin
D. Const
Câu 19: 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 hàm max trên như thế nào để tìm được số lớn nhất trong ba số A, B, C?
A. max(A; B; C);
B. max(A; max(B, C);
C. max(A, B, C);
D. max(max(A, B),C);
Câu 20: Cho chương trình sau:
procedure thutuc (a, b: integer);
Begin
…
End;
Trong chương trình chính có thể gọi lại chương trình con như thế nào:
A. thutuc;
B. thutuc (5, 10);
C. thutuc(1, 2, 3);
D. thutuc(5);
Phần II. Tự luận
Bài 1 . (2 điểm) Viết chương trình:
Đọc từ tệp “DULIEU.TXT” 2 số nguyên M và N (M < N)
Tính tổng các số chẵn trong phạm vi từ M đến N
Ghi kết quả ra tệp “KETQUA.TXT”.
Bài 2. (3 điểm) Cho chương trình sau:
Program C_trinh_con;
Var d: char;
X1: string;
Procedure Xoa (a: char ; var Xt:string);
Var j: byte;
Begin
j := pos (a, Xt);
while j < > 0 do
begin
delete(Xt, j, 1);
j := pos(a, Xt);
end;
End;
Begin
X1:=’SUCCESSFUL’;
d := ‘S’;
Xoa (d, X1);
End.
a/ Hãy chạy tay cho ra kết quả theo bảng mẫu dưới đây:
b/ Hãy chỉ ra: biến toàn cục, biến cục bộ, tham số hình thức, tham số thực sự, tham số biến,tham số giá trị trong chương trình trên.
Đáp án & Thang điểm
Phần I. Trắc nghiệm
Phần II. Tự luận
Bài 1 .
Var f1, f2: text;
Tong, m, n, i: integer;
Begin
assign(f1, ‘DULIEU.TXT’);
reset(f1);
assign(f2, ‘KETQUA’);
rewrite(f2);
Tong;= 0;
read(f1, m, n);
for i:= m to n do
if i mod 2 = 0 then Tong:= Tong+i;
write(f2, Tong);
close(f1);
close(f2);
End.
Bài 2a .
Bài 2b .
Phòng Giáo dục và Đào tạo .....
Đề thi Học kì 2
Năm học 2024
Môn: Tin học lớp 11
Thời gian làm bài: 45 phút
(Đề số 3)
Phần I. Trắc nghiệm
Câu 1: Cho đoạn chương trình sau:
s1 := ‘abcd’; s2: ‘abab’;
if s1 > s2 then write(s1) else write(s2);
Kết quả in ra màn hình là:
A. ‘abcd’
B. ‘abab’
C. ‘abcdabab’
D. ‘abababcd’
Câu 2: Cho s = ‘ABCDEF’, hàm copy (s, 4, 3) cho giá trị là:
A. ‘ABC’
B. ‘BCD’
C. ‘CDE’
D. ‘DEF’
Câu 3: Cho s = ‘Xin chao Viet Nam’, hàm length(s) cho giá trị bằng:
A. 15
B. 16
C. 17
D. 18
Câu 4: Cho đoạn chương trình sau:
s1 := ‘2345’; s2: ‘1234’;
if length(s1) > length(s2) then write(s1) else write(s2);
Kết quả in ra màn hình là:
A. ‘2345’
B. ‘1234’
C. ‘23451234’
D. ‘12342345’
Câu 5: Cho xâu kí tự sau: s:= ‘Truyen Kieu-Nguyen Du’
Lệnh nào sau đây cho kết quả ‘Truyen Kieu’
A. copy(s, 12, 10);
B. copy(s, 13, 9);
C. delete(s, 12, 10);
D. delete(s,13, 9);
Câu 6: Cho đoạn chương trình sau:
s1 := ‘123c’; s2 := ‘abcd’;
delete(s1, 1, 3);
write(pos (s1, s2));
Kết quả in ra màn hình là:
A. 1
B. 2
C. 3
D. 4
Câu 7: Khai báo 2 biến xâu a, b nào sau đây là sai:
A. var a, b = string;
B. var a, b : string[15];
C. var a, b : string[25];
D. var a, b : string;
Câu 8: Trong PASCAL, để khai báo hai biến tệp văn bản f1, f2 ta viết:
A. Var f1. f2 : Text;
B. Var f1 ; f2 : Text;
C. Var f1 : f2 : Text;
D. Var f1 , f2 : Text;
Câu 9: Để gắn tệp DL.TXT cho biến tệp f1 ta sử dụng câu lệnh:
A. f1 := ‘DL.TXT’;
B. ‘DL.TXT’ := f1;
C. Assign(f1, ‘DL.TXT’);
D. Assign(‘DL.TXT’, f1);
Câu 10: Câu lệnh mở biến tệp f2 để ghi dữ liệu có dạng:
A. reset(f1);
B. rewrite(f1);
C. read(f1);
D. write(f1);
Câu 11: Để ghi 2 biến CV và DT vào biến tệp f2 ta sử dụng câu lệnh:
A. write(f2, CV, DT);
B. read(f2, CV, DT);
C. writeln(CV, DT, f2);
D. readln(CV, DT, f2);
Câu 12: Để biết con trỏ tệp đã ở cuối tệp f hay chưa, ta sử dụng hàm:
A. eof(f)
B. eoln(f)
C. Cả A, B đều đúng
D. Cả A, B đều sai
Câu 13: Giả sử a = 5; b = 9; c = 15; để ghi các giá trị trên vào tệp f2 có dạng là ta sử dụng câu lệnh:
A. Read(f1, x, y, z);
B. Readln(x, y, z, f1);
C. write(f1, x, y, z);
D. writeln(x, y, z, f1);
Câu 14: Trong lời gọi thủ tục, các tham số hình thức được thay bằng các giá trị cụ thể được gọi là:
A. Tham số thực sự
B. Tham số giá trị
C. Tham số hình thức
D. Tham số biến
Câu 15: Cho đoạn chương trình sau:
Var g:text;
I:integer;
Begin
Assign(g, ‘C:\DLA.txt’);
Rewrite(g);
For i:=1 to 10 do
If i mod 2 = 0 then write(g, i);
Close(g);
Readln
End.
Sau khi thực hiện chương trình trên, nội dung của tệp ‘DLA.txt’ gồm những phần tử nào?
A. 2; 4; 6; 8; 10
B. 1; 3; 5; 9
C. 1; 3; 5; 7; 9
D. 4; 6; 8; 10
Câu 16: Tham số được khai báo trong chương trình chính được gọi là:
A. Tham số thực sự
B. Tham số hình thức
C. Tham số biến
D. Tham số giá trị
Câu 17: Muốn khai báo y là tham số giá trị, x là tham số biến (x, y thuộc kiểu integer) trong thủ tục có tên là “Hoan_doi” thì khai báo nào sau đây là đúng:
A. Procedure Hoan_doi (y : integer; Var x : integer);
B. Procedure Hoan_doi (x : integer; Var y : integer);
C. Procedure Hoan_doi (Var x, y : integer);
D. Procedure Hoan_doi (x, y : integer);
Câu 18: Để phân biệt giữa tham biến và tham trị, trước tham biến người ta dùng từ khoá:
A. Type
B. Begin
C. Var
D. Const
Câu 19: 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 hàm max trên như thế nào để tìm được số lớn nhất trong ba số A, B, C?
A. max(A; B; c);
B. max(A; max(B, C);
C. max(A, B, C);
D. max(max(A, B),C);
Câu 20: Cho chương trình sau:
procedure thutuc (a, b: integer);
Begin
…
End;
Trong chương trình chính có thể gọi lại chương trình con như thế nào:
A. thutuc;
B. thutuc(1, 2, 3);
C. thutuc (5, 10);
D. thutuc(5);
Phần II. Tự luận
Bài 1 . (2 điểm) Viết chương trình:
Đọc từ tệp “DULIEU.TXT” 2 số nguyên M và N (M < N)
Tính tổng các số chia hết cho 5 trong phạm vi từ M đến N
Ghi kết quả ra tệp “KETQUA.TXT”.
Bài 2. (3 điểm) Cho chương trình sau:
Program Baitap;
Var S1, S2 : string;
Procedure Xu_li_xau(a:string; var St:string);
Var i: byte;
Begin
i := pos (a, St);
while i < > 0 do
begin
delete(St, i, 4);
i := pos(a, St);
end;
End;
Begin
S1 := ‘hoc nua, hoc mai;
S2 := ‘hoc’;
Xu_li_xau(S2,S1);
End.
a/ Hãy chạy tay cho ra kết quả theo bảng mẫu dưới đây:
b/ Hãy chỉ ra: biến toàn cục, biến cục bộ, tham số hình thức, tham số thực sự, tham số biến,tham số giá trị trong chương trình trên.
Đáp án & Thang điểm
Phần I. Trắc nghiệm
Phần II. Tự luận
Bài 1 .
Var f1, f2: text;
Tong, m, n, i: integer;
Begin
assign(f1, ‘DULIEU.TXT’);
reset(f1);
assign(f2, ‘KETQUA’);
rewrite(f2);
Tong;= 0;
read(f1, m, n);
for i:= m to n do
if i mod 2 = 0 then Tong:= Tong+i;
write(f2, Tong);
close(f1);
close(f2);
End.
Bài 2a .
Bài 2b .
Phòng Giáo dục và Đào tạo .....
Đề thi Học kì 2
Năm học 2024
Môn: Tin học lớp 11
Thời gian làm bài: 45 phút
(Đề số 4)
Phần I. Trắc nghiệm
Câu 1: Cho đoạn chương trình sau:
s1 := ‘acb’; s2: ‘abcd’;
if s1 > s2 then write(s1) else write(s2);
Kết quả in ra màn hình là:
A. ‘abcd’
B. ‘acb’
C. ‘abcdacb’
D. ‘acbabcd’
Câu 2: Cho s = ‘ABCDEF’, hàm copy (s, 3, 3) cho giá trị là:
A. ‘ABC’
B. ‘BCD’
C. ‘CDE’
D. ‘DEF’
Câu 3: Cho s = ‘Tran Hung Dao’, hàm length(s) cho giá trị bằng:
A. 11
B. 12
C. 13
D. 14
Câu 4: Cho đoạn chương trình sau:
s1 := ‘abcd’; s2: ‘1234’;
if length(s1) > length(s2) then write(s1) else write(s2);
Kết quả in ra màn hình là:
A. ‘abcd’
B. ‘1234’
C. ‘abcd1234’
D. ‘1234abcd’
Câu 5: Cho xâu kí tự sau: s:= ‘Truyen Kieu-Nguyen Du’
Lệnh nào sau đây cho kết quả ‘Nguyen Du’
A. copy(s, 12, 10);
B. delete(s, 12, 10);
C. delete(s,13, 9);
D. copy(s, 13, 9);
Câu 6: Cho đoạn chương trình sau:
s1 := ‘123b’; s2 := ‘abcd’;
delete(s1, 1, 3);
write(pos (s1, s2));
Kết quả in ra màn hình là:
A. 1
B. 2
C. 3
D. 4
Câu 7: Khai báo 2 biến xâu a, b nào sau đây là đúng:
A. var a, b : string[275];
B. var a, b = string[275];
C. var a, b : string;
D. var a. b : string;
Câu 8: Trong PASCAL, để khai báo hai biến tệp văn bản f1, f2 ta viết:
A. Var f1. f2 : Text;
B. Var f1 , f2 : Text;
C. Var f1 ; f2 : Text;
D. Var f1 : f2 : Text;
Câu 9: Để gắn tệp KQ.TXT cho biến tệp f2 ta sử dụng câu lệnh:
A. Assign(f2, ‘KQ.TXT’);
B. f2 := ‘KQ.TXT’;
C. ‘KQ.TXT’ := f2;
D. Assign(‘KQ.TXT’, f2);
Câu 10: Câu lệnh mở biến tệp f1 để đọc dữ liệu có dạng:
A. reset(f1);
B. rewrite(f1);
C. read(f1);
D. write(f1);
Câu 11: Để đọc dữ liệu từ biến tệp f1 chứa 2 biến a, b ta sử dụng câu lệnh:
A. read(f1, a, b);
B. write(f1, a, b);
C. readln(a, b, f1);
D. writeln(a, b, f1);
Câu 12: Để biết con trỏ tệp đã ở cuối dòng của tệp f hay chưa, ta sử dụng hàm:
A. eof(f)
B. eoln(f)
C. Cả A, B đều đúng
D. Cả A, B đều sai
Câu 13: Tệp f1 có dữ liệu để đọc 3 giá trị trên tương ứng với 3 biến x, y, z ta sử dụng câu lệnh:
A. Read(f1, x, y, z);
B. Readln(x, y, z, f1);
C. write(f1, x, y, z);
D. writeln(x, y, z, f1);
Câu 14: Trong lời gọi thủ tục, các tham số hình thức được thay bằng các giá trị cụ thể được gọi là:
A. Tham số giá trị
B. Tham số hình thức
C. Tham số thực sự
D. Tham số biến
Câu 15: Cho đoạn chương trình sau:
Var g:text;
I:integer;
Begin
Assign(g, ‘C:\DLA.txt’);
Rewrite(g);
For i:=1 to 10 do
If i mod 2 <> 0 then write(g, i);
Close(g);
Readln
End.
Sau khi thực hiện chương trình trên, nội dung của tệp ‘DLA.txt’ gồm những phần tử nào?
A. 2; 4; 6; 8;10
B. 1; 3; 5; 9
C. 1; 3; 5; 7; 9
D. 4; 6; 8; 10
Câu 16: Tham số được đưa vào khi gọi chương trình con được gọi là:
A. Tham số thực sự
B. Tham số hình thức
C. Tham số biến
D. Tham số giá trị
Câu 17: Muốn khai báo x,y là tham số giá trị (x, y thuộc kiểu integer) trong thủ tục có tên là “Hoan_doi” thì khai báo nào sau đây là đúng:
A. Procedure Hoan_doi (y : integer; Var x : integer);
B. Procedure Hoan_doi (x : integer; Var y : integer);
C. Procedure Hoan_doi (Var x, y : integer);
D. Procedure Hoan_doi (x, y : integer);
Câu 18: Để phân biệt giữa tham biến và tham trị, trước tham biến người ta dùng từ khoá:
A. Type
B. Begin
C. Const
D. Var
Câu 19: 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 hàm max trên như thế nào để tìm được số lớn nhất trong ba số A, B, C?
A. max(A; B; c);
B. max(max(A, B),C);
C. max(A; max(B, C);
D. max(A, B, C);
Câu 20: Cho chương trình sau:
procedure thutuc (a, b: integer);
Begin
…
End;
Trong chương trình chính có thể gọi lại chương trình con như thế nào:
A. thutuc (5, 10);
B. thutuc;
C. thutuc(1, 2, 3);
D. thutuc(5);
Phần II. Tự luận
Bài 1 . (2 điểm) Viết chương trình:
Đọc từ tệp “DULIEU.TXT” 2 số nguyên M và N (M < N)
Tính tổng các số chia hết cho 3 trong phạm vi từ M đến N
Ghi kết quả ra tệp “KETQUA.TXT”.
Bài 2. (3 điểm) Cho chương trình sau:
Program C_trinh_con;
Var d: char;
X1: string;
Procedure Xoa (a: char ; var Xt:string);
Var j: byte;
Begin
j := pos (a, Xt);
while j < > 0 do
begin
delete(Xt, j, 1);
j := pos(a, Xt);
end;
End;
Begin
X1:=’SEPTEMBER’;
d := ‘E’;
Xoa (d, X1);
End.
a/ Hãy chạy tay cho ra kết quả theo bảng mẫu dưới đây:
b/ Hãy chỉ ra: biến toàn cục, biến cục bộ, tham số hình thức, tham số thực sự, tham số biến,tham số giá trị trong chương trình trên.
Đáp án & Thang điểm
Phần I. Trắc nghiệm
Phần II. Tự luận
Bài 1 .
Var f1, f2: text;
Tong, m, n, i: integer;
Begin
assign(f1, ‘DULIEU.TXT’);
reset(f1);
assign(f2, ‘KETQUA’);
rewrite(f2);
Tong;= 0;
read(f1, m, n);
for i:= m to n do
if i mod 2 = 0 then Tong:= Tong+i;
write(f2, Tong);
close(f1);
close(f2);
End.
Bài 2a .
Bài 2b .