ĐỀ TRẮC NGHIỆM
Bài 1:
Thực hiện chương trình sau:
Var i,n:byte;
BEGIN
N:=10; i:=1;
WHILE i<=n DO
Writeln(‘Turbo Pascal’);
I:=i+1;
END.
Câu ‘Turbo Pascal’ viết ra màn hình:
a. 1 lần
b. 10 lần
c. Không một lần nào.
d. Vòng lặp vô tận.
Bài 9:
Cho thực hiện chương trình sau:
Var i:Integer;
BEGIN
FOR i:=1 TO 5 DO write(‘lap lai’);
END.
‘lap lai’ in ra trên màn hình với số lần:
a. 5
b. 6
c. 4
Chương trình bị lỗi.
Bài 2:
Thực hiện chương trình sau:
Var i,p:byte;
BEGIN
I:=1;p:=1;
WHILE i<=n DO
BEGIN
P:=p*i;
I:=i+1;
END;
Writeln(p);
END.
Kết quả trên màn hình:
a. 1
b. N
c. Chương trình trên bị bắt lỗi.
d. Vòng lặp vô tận.
Bài 10:
Thực hiện chương trình sau:
Var i: Byte;
BEGIN
FOR i := 3 DOWNTO 1 DO
Write(i);
END.
Kết quả nhận được trên màn hình:
a. 3 2 1
b. 0 1 2
c. 123
d. Không có câu nào đúng.
Bài 3:
Thực hiện chương trình sau:
Var
T1, t2: word;
N: byte;
BEGIN
T1 := 0; t2 := 1;
N := 5;
WHILE n > 0 DO
BEGIN
Write(t2, ' ');
Bài 11:
Thực hiện chương trình sau:
Var i: Byte;
BEGIN
FOR i := 1 TO 3 DO Write(i);
END.
Kết quả nhận được trên màn hình:
e. 1 2 3
f. 0 1 2
g. 123
Không có câu nào đúng.
T2 := t2 + t1;
T1 := t2 - t1;
N := n - 1;
END;
END.
Kết quả nhận được trên màn hình là:
a. 1 1 2 4 6
b. 1 1 2 3 5
c. 1 1 1 3 4
d. 1 2 3 4 5
Bài 4:
Giả sử thực hiện chương trình sau:
Var
I : boolean;
J : byte;
BEGIN
I := False; j := 0;
WHILE Not i DO
BEGIN
I := Succ(i);
J := j + 1;
END;
Write(j);
END.
Kết quả hiển thị trên màn hình:
a. 255
b. 1
c. 127
d. 256
Bài 12:
Chương trình sau:
Const n=5;
Var i : Byte;
BEGIN
FOR i := 1 TO n DO ;
BEGIN
Writeln('Chao Cac Ban');
END;
END.
Kết quả nhận được trên màn hình:
a. Câu "Chao Cac Ban" được hiển
thị trên 5 dòng khác nhau.
b. Câu "Chao Cac Ban" được hiển
thị 5 lần trên 1 dòng.
c. Câu "Chao Cac Ban" được hiển
thị 1 lần trên 1 dòng.
Không có câu nào đúng.
Bài 5:
Thực hiện chương trình sau:
Varn : byte;
BEGIN
N := 40;
WHILE n mod 2 = 0 DO
BEGIN
Write('*');
N := n div 2;
END;
Write(n);
END.
Kết quả thực hiện chương trình trên:
a. *20
b. **10
Bài 13:
Thực hiện chương trình sau:
Var
I: byte;
BEGIN
FOR i := 0 TO 10 DO
BEGIN
IF i mod 5 = 0 THEN
writeln;
Write(i: 3);
END;
END.
Kết quả nhận được là:
A.
0
c. ***5
d. ****2
1 2345
6 78910
B.
01 2 34
5 6 789
10
C.
012345678910
D.
012345
678910
Bài 6:
Thực hiện chương trình sau:
Varn : byte;
BEGIN
N := 40;
WHILE n div 2 = 0 DO
BEGIN
Write('*');
N := n div 2;
END;
Write(n);
END.
Kết quả nhận được trên màn hình:
a. ***5
b. **10
c. *20
d. 40
Bài 14:
Thực hiện chương trình sau:
Const n = 3;
Var
I: byte;
BEGIN
FOR i := 0 TO n DO
Write( i );
Writeln(i+1);
END.
Kết quả nhận được:
a.
01
12
23
34
b.
123
4
c.
0123
4
01234
Bài7:
Cho chương trình sau:
Var i : Byte;
BEGIN
I := 1;
WHILE i <= 5 DO
BEGIN
Writeln('Chao Cac Ban');
I:= i+1;
END;
Bài 15:
Thực hiện chương trình sau:
Const n = 3;
Var
I,j: byte;
BEGIN
FOR i:=0 TO 2 DO
FOR j := 1 TO n DO
Write( i );
END.
END.
Kết quả nhận được trên màn hình:
a. Câu "Chao Cac Ban" được hiển
thị 1lần trên 1 dòng.
b. Câu "Chao Cac Ban" được hiển
thị trên 5 dòng khác nhau.
c. Câu "Chao Cac Ban" được hiển
thị 5 lần trên 1 dòng.
d. Chương trình bị lỗi .
Kết quả nhận được:
a. 000111222
b. 123123123
c. 012301230123
0123456
Bài 8:
Thực hiện chương trình sau:
Var i, j: byte;
BEGIN
FOR i := 1 TO 3 DO
FOR j := i - 1 DOWNTO 1 DO
write(j:2);
END.
Kết quả trên màn hình:
a. 1 2 3
b. 1 2 2
c. 1 2 1
d. 1 1 1
Bài 16:
Thực hiện chương trình sau:
Var i, j: byte;
BEGIN
FOR i := 1 TO 3 DO
FOR j := i - 1 DOWNTO 1 DO
write(i:2);
END.
Kết quả trên màn hình:
a. 1 2 2 3 3 3
b. 1 1 2 2 3
c. 2 2 3
2 3 3