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à:
Đáp án và lời giải
Đáp án: A
2/22 câu đang cập nhật đáp án (ghi rõ ở từng câu), chưa tính điểm; điểm tính trên 20 câu còn lại.
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à:
Đáp án: A
Cho s = ‘ABCDEF’, hàm copy (s, 4, 3) cho giá trị là:
Đáp án: D
Cho s = ‘Xin chao Viet Nam’, hàm length(s) cho giá trị bằng:
Đáp án: C
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à:
Đáp án: B
Cho xâu kí tự sau: s:= ‘Truyen Kieu-Nguyen Du’
Lệnh nào sau đây cho kết quả ‘Truyen Kieu’
Đáp án: C
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à:
Đáp án: C
Khai báo 2 biến xâu a, b nào sau đây là sai:
Đáp án: A
Trong PASCAL, để khai báo hai biến tệp văn bản f1, f2 ta viết:
Đáp án: C
Để gắn tệp DL.TXT cho biến tệp f1 ta sử dụng câu lệnh:
Đáp án: C
Câu lệnh mở biến tệp f2 để ghi dữ liệu có dạng:
Đáp án: B
Để ghi 2 biến CV và DT vào biến tệp f2 ta sử dụng câu lệnh:
Đáp án: A
Để biết con trỏ tệp đã ở cuối tệp f hay chưa, ta sử dụng hàm:
Đáp án: A
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:
Đáp án: C
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à:
Đáp án: D
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?
Đáp án: A
Tham số được khai báo trong chương trình chính được gọi là:
Đáp án: B
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:
Đáp án: A
Để phân biệt giữa tham biến và tham trị, trước tham biến người ta dùng từ khoá:
Đáp án: A
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?
Đáp án: A
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:
Đáp án: D
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”.
Lời giải của đề gốc để bạn tự đối chiếu; câu tự luận không tính điểm.
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.
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.
Lời giải của đề gốc để bạn tự đối chiếu; câu tự luận không tính điểm.
a)

b)
