wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Ôn tập Tin học

Total questions: 49

Worksheet time: 37mins

Name
Class
Date
1.

Hãy chọn phương án ghép đúng. Với cấu trúc rẽ nhánh IF <điều kiện> THEN <câu lệnh> , câu lệnh đứng sau THEN được thực hiện khi

a)

Điều kiện được tính toán xong

b)

Điều kiện được tính toán và cho giá trị đúng

c)

Điều kiện không tính được

d)

Điều kiện được tính toán và cho giá trị sai

2.

Hãy chọn phương án ghép đúng. Với cấu trúc rẽ nhánh IF <điều kiện> THEN <câu lệnh 1> ELSE <câu lệnh 2>, câu lệnh 2 được thực hiện khi

a)

Biểu thức điều kiện đúng và câu lệnh 1 thực hiện xong

b)

Câu lệnh 1 được thực hiện

c)

Biểu thức điều kiện sai

d)

Biểu thức điều kiện đúng

3.

Trong ngôn ngữ lập trình pascal, câu lệnh nào sau đây là đúng

a)

If <biểu thức logic> ; then <câu lệnh>.

b)

If <biểu thức logic> then <câu lệnh>;

c)

If <biểu thức logic> then <câu lệnh>.

d)

If <biểu thức logic> ; then <câu lệnh>;

4.

Trong ngôn ngữ lập trình pascal, câu lệnh nào sau đây là đúng

a)

If <biểu thức logic> ; then <câu lệnh 1> else <câu lệnh 2>;

b)

If <biểu thức logic> ; then <câu lệnh 1> ; else <câu lệnh 2>;

c)

If <biểu thức logic> then <câu lệnh 1> ; else <câu lệnh 2>;

d)

If <biểu thức logic> then <câu lệnh 1> else <câu lệnh 2>;

5.

Hãy chọn phương án ghép đúng nhất. Để mô tả cấu trúc rẽ nhánh trong thuật toán, nhiều ngôn ngữ lập trình bậc cao dùng câu lệnh IF là <điều kiện>. Điều kiện là

a)

Biểu thức logic

b)

Biểu thức số học

c)

Biểu thức quan hệ

d)

Một câu lệnh

6.

Trong ngôn ngữ lập trình pascal, câu lệnh nào sau đây là đúng

a)

If a=5 Then


a :=d+1;


Else

a :=d+2;

b)

If a=5 Then

a =d+1;


Elsee


a =d+2;

c)

If a=5 Then


a:=d+1


Else

a:=d+2;

d)

If a=5 Then


a:=d+1;


Else

a:=d+2.

7.

Trong ngôn ngữ lập trình pascal, câu lệnh nào sau đây là đúng

a)

If a=5 Then


a:=d+1;


b:=2


Else


a:=d+2;

b)

If a=5 Then

Begin

a:=d+1;


b:=2


End


Else


a:= d+2.

c)

If a=5 Then

Begin

a:=d+1;


b:=2


End;


Else


a:= d+2;

d)

If a=5 Then

Begin

a:=d+1;


b:=2;


End


Else


a:= d+2;

8.

Trong ngôn ngữ lập trình pascal, câu lệnh nào sau đây là đúng

a)

If a = 5 Then


a := d+1;


b :=2


Else


a := d+2;

b)

If a = 5 Then


a := d+1;


b :=2;


End


Else


a := d+2;

c)

If a = 5 Then


a := d+1;


b :=2


End


Else


a := d+2;

d)

Tất cả đều sai

9.

Trong ngôn ngữ lập trình pascal, ta có đoạn chương trình sau

A:=1; For i:=10 downto 3 do S:= S+i;

Hỏi sau khi thực hiện đoạn chương trình trên thì giá trị của biến S là bao nhiêu

a)

S= 10

b)

S= 52

c)

S= 55

d)

S= 53

10.

Trong ngôn ngữ lập trình pascal, ta có đoạn chương trình sau:

I: 1; S:=0; While I<5 do Begin S:= S+2; I:=I+1;End;

Hỏi sau khi thực hiện đoạn chương trình trên thì giá trị của biến S là bao nhiêu

a)

S=10

b)

S=8

c)

S=0

d)

Tất cả đều sai

11.

Trong ngôn ngữ lập trình pascal, ta có đoạn chương trình sau:

I: 5; S:=0; While I>1 do Begin S:= S+2; I:=I-1;End;

Hỏi sau khi thực hiện đoạn chương trình trên thì giá trị của biến S là bao nhiêu

a)

S=10

b)

S=8

c)

S=0

d)

Tất cả đều sai

12.

Trong ngôn ngữ lập trình pascal, ta có đoạn chương trình sau:

I: 1; S:=0; While I<=5 do Begin S:= S+2; I:=I+1;End;

Hỏi sau khi thực hiện đoạn chương trình trên thì giá trị của biến S là bao nhiêu

a)

I=10

b)

I= 5

c)

I=6

d)

I=4

13.

Cú pháp lênhư lặp For-do dạng tiến

a)

FOR <biến đếm>: = <Giá trị cuối>DOWNTO <Giá trị đầu> DO <câu lệnh>;

b)

FOR <biến đếm> = <Giá trị đầu>DOWNTO <Giá trị cuối> DO <câu lệnh>;

c)

FOR <biến đếm> = <Giá trị cuối> TO <Giá trị đầu> DO <câu lệnh>;

d)

FOR <biến đếm>:= <Giá trị đầu> TO <Giá trị cuối> DO <câu lệnh>;

14.

Cú pháp lệnh lặp For-do dạng lùi

a)

FOR <biến đếm>: = < Giá trị cuối > DOWNTO < Giá trị đầu > DO < câu lệnh >;

b)

FOR <biến đếm> = < Giá trị đầu > DOWNTO < Giá trị cuối > DO < câu lệnh >;

c)

FOR <biến đếm> = < Giá trị cuối > TO < Giá trị đầu > DO < câu lệnh >;

d)

FOR <biến đếm>:= < Giá trị đầu > TO < Giá trị đầu > DO < câu lệnh >;

15.

Trong vòng lặp For - do dạng lùi. Giá trị của biến đếm

a)

Tự động giảm đi 1

b)

Chỉ tăng khi có câu lệnh thay đổi giá trị

c)

Tự động tăng lên 1

d)

Được giữ nguyên

16.

Trong vòng lặp For- do dạng tiến. Giá trị của biển đến

a)

Tự động giảm đi 1

b)

Tự động tăng lên 1

c)

Chỉ tăng khi có câu lệnh thay đổi giá trị

d)

Được giữ nguyên

17.

Kiểu dữ liệu của biến đếm trong lệnh lặp For- do

a)

Cùng kiểu với giá trị đầu và giá trị cuối

b)

Cùng kiểu với các biến trong câu lệnh

c)

Chỉ cần khác kiểu với giá trị đầu

d)

Không cần phải xác định kiểu dữ liệu

18.

Trong ngôn ngữ lập trình pascal, ta có đoạn chương trình sau:

S :=1; For i:=1 to 4 do S:=S * i;

Hỏi sau khi khi thực hiện đoạn chương trình trên thì giá trị của biến S là bao nhiêu

a)

S=24

b)

S= 4

c)

S=0

d)

Tất cả đều sai

19.

Trong ngôn ngữ lập trình pascal, đoạn chương trình sau đưa ra màn hình kết quả gì?

For i :=10 To 1 Do Write (i,' ');

a)

1 2 3 4 5 6 7 8 9 10

b)

10 9 8 7 6 5 4 3 2 1

c)

Đưa ra 10 dấu cách

d)

Không đưa ra kết quả gì

20.

Trong ngôn ngữ lập trình pascal, đoạn chương trình sau đưa ra màn hình kết quả gì

I := 0; While I <> 0 Do Write (i,' ');

a)

Đưa ra màn hình 10 chữ số 0

b)

Không đưa ra thông tin gì

c)

Lặp vô hạn việc đưa ra màn hình số 0

d)

Đưa ra màn hình 1 chữ số 0

21.

Trong ngôn ngữ lập trình pascal, đoạn chương trình sau đưa ra màn hình kết quả gì với I làm biển số nguyên

For I := 1 To 100 Do If I mod 9 = 0 Then Write (I, ' ');

a)

1 2 3 4 5 6... 100

b)

91827364554637281

c)

9 18 27 36 45 54 63 72 81 90 99

d)

9 9 9 9 9 9 9 9

22.

Cách khai báo mảng nào sau đây là đúng

a)

TYPE MANG: ARRAY[1...10] OF INTEGER; VAR A: MANG;

b)

TYPE MANGNGUYEN= ARRAY[10...1] OF CHAR; VAR B: MANG;

c)

VAR MANGNGUYEN= ARRAY[1.2..10] OF REAL; VAR C: MANGNGUYEN;

d)

TYPE MANGNGUYEN= ARRAY[1..20] OF BYTE; VAR D: MANGNGUYEN;

23.

Cho khai báo mảng như sau: TYPE MANGNGUYEN = ARRAY[1..100] OF INTEGER; VAR A: MANGNGUYEN;

Phương án nào dưới đây chỉ phần tử thứ 17 của mảng

a)

A[17]

b)

A[16]

c)

A[1..17]

d)

A[18]

24.

Trong cú pháp khai báo biến mảng một chiều, kiểu chỉ số...

a)

Thương là một đoạn số nguyên liên tục có dạng n1..n2 với n1>= n2.

b)

Luôn luôn là một đoạn nguyên liên tục có dạng n1..n2 với n1<= n2.

c)

Thường là một đời số nguyên liên tục có dạng n1 : n2 với n1<= n2.

d)

Thường là một đoạn số nguyên liên tục có dạng n1..n2 với n1<= n2.

25.

Cho khai báo: TYPE MANGNGUYEN = ARRAY[1..100] OF BYTE; VAR A: MANGNGUYEN;

Số lượng phần tử tối đa cao của mảng A ở khai báo trên là

a)

1

b)

99

c)

100

d)

101

26.

Cho khai báo: TYPE MANGNGUYEN = ARRAY[1..10] OF INTEGER; VAR A: MANGNGUYEN;

Số lượng phần tử tối đa của mảng A ở khai báo trên là

a)

1

b)

10

c)

11

d)

100

27.

Chọn phát biểu đúng cho biến D trong đoạn chương trình sau:

D:=0; FOR I:=1 TO N DO IF A [I] MOD 2 =0 THEN D:=D+1;

a)

Tổng các phần tử lẻ trong mảng A

b)

Tổng các phần tử là bội số của 3 nó trong mảng A

c)

Đếm các phần tử chẵn trong mảng A

d)

Điểm các phần tử là bội số của 3 nó trong mảng A

28.

Chọn phát biểu đúng cho biến D trong đoạn chương trình sau:


D:=0; FOR I:=1 TO N DO IF A [I] MOD 3 =0 THEN D:=D+1;

a)

Tổng các phần tử lẻ trong mảng A

b)

Tổng các phần tử là bội số của 3 nó trong mảng A

c)

Đếm các phần tử chẵn trong mảng A

d)

Đếm các phần tử là bội số của 3 nó trong mảng A

29.

Cho khai báo sau: TYPE MANG = ARRAY[1...100] OF INTEGER; VAR A: MANG; K: INTEGER;

Câu lệnh nào dưới đây sẽ in ra tất cả các phần tử của mảng A gồm 30 phần tử

a)

FOR K:=1 TO 100 DO READ(A[K]);

b)

FOR K:=100 DOWN 100 DO WRITE(A[K]);

c)

FOR K:=1 TO 30 DO WRITE(A[K]);

d)

FOR K:=30 DOWN TO 1 TO READ(A[K]);

30.

Cho khai báo sau: TYPE MANG = ARRAY[1...100] OF INTEGER; VAR A: MANG; K: INTEGER;


Câu lệnh nào dưới đây sẽ nhập tất cả các phần tử của mảng A gồm 30 phần tử

a)

FOR K:=1 TO 100 DO READ(A[K]);

b)

FOR K:=100 DOWN 1 DO WRITE(A[K]);

c)

FOR K:=1 TO 30 DO READ(A[K]);

d)

FOR K:=30 TO 1 TO READ(A[K]);

31.

Cho đoạn chương trình sau:

S:=9; FOR I:= 5 DOWNTO 1 DO If (( I MOD 2) <>0) THEN S:=S + A[i]; WRITE ( 'S=',S); Với A[1]:=5; A[2]:=6; A[3]:=3; A[4]:=7; A[5]:=2; kết quả sau khi chạy đoạn chương trình trên là

a)

S= 1

b)

S=21

c)

S=24

d)

S=33

32.

Cho đoạn chương trình sau:


S:=10; FOR I:= 1 TO 4 DO If (( I MOD 3)=0) THEN S:=S + A[i]; WRITE ( 'S=',S); Với A[1]:=9; A[2]:=6; A[3]:=4; A[4]:=7; kết quả sau khi chạy đoạn chương trình trên là

a)

S=33

b)

S=24

c)

S=21

d)

S=15

33.

Cho khai báo sau: VAR ST:STRING; phát biểu nào dưới đây là đúng

a)

Câu lệnh sai vì thiếu độ dài tối đa của xâu

b)

Xâu có độ dài lớn nhất là 0

c)

Cần phải khai báo kích thước của xâu sau đó

d)

Xâu có độ dài lớn nhất là 255

34.

Hãy chọn phương án ghép đúng nhất. Thủ tục chuẩn Insert (S1, S2, vt); thực hiện

a)

Chèn xâu S1 và S2 bắt đầu từ vị trí vt

b)

Chèn xâu S2 vào S1 bắt đầu từ vị trí vt

c)

Sao chép vào cuối S1 một phần của S2 từ vị trí vt

d)

Nối xâu S1 và S2 ở vị trí đầu tiên

35.

Cho ST là một xâu ký tự, đoạn chương trình sau thực hiện công việc gì?

FOR I:=LENGTH (ST) DOWNTO 1 WRITE (ST[I]);

a)

In từng ký tự xâu trong xâu ST ra màn hình

b)

In ký tự cuối cùng trong xâu ST ra màn hình

c)

In từng ký tự trong xâu ST ra màn hình theo thứ tự ngược

d)

In từng ký tự đầu tiên trong xâu ST ra màn hình

36.

Cho ST là một xâu ký tự, đoạn chương trình sau thực hiện công việc gì?


FOR I:= 1 TO LENGTH (ST) DO 1 WRITE (ST[I]);

a)

In từng ký từ sâu trong xâu ST ra màn hình

b)

In ký tự cuối cùng trong xâu ST ra màn hình

c)

In từng ký tự trong xâu ST ra màn hình theo thứ tự ngược

d)

In từng ký tự đầu tiên trong xâu ST ra màn hình

37.

Thủ tục xóa N thì từ trong xâu S bắt đầu tại vị trí VT có cú pháp là

a)

Delete (N, St, Vt)

b)

Delete (St, Vt, N)

c)

Delete (S, Vt, N)

d)

Delete (S, Vt, N)

38.

Để bắt đầu và kết thúc hằng xâu, ta dùng cặp dấu

a)

Nháy kép

b)

Nháy đơn

c)

Ngoặc tròn

d)

Ngoặc vuông

39.

Trong ngôn ngữ pascal, để xóa đi một ký tự cuối cùng của xâu S ta viết

a)

Delete(S, i, 1);

b)

Delete(S,length (S), 1);

c)

Delete(S, 1, 1);

d)

Delete(S, 1, i);

40.

Cho xâu S = 'Daithang-Dailoc'. Kết quả của hàm Pos('Dailoc',S) là

a)

9

b)

10

c)

11

d)

6

41.

Cho xâu S= 'nguyen-van-hoang'; để có kết quả là xấu m='van' thì thực hiện

a)

m:=delete (s, 9, 3);

b)

delete (s, 9, 3);

c)

m:=copy (s, 8, 3);

d)

m:=copy(s, 3, 8);

42.

Phát biểu nào dưới đây là đúng

a)

Các kiểu dữ liệu đều được lưu trữ ở bộ nhớ trong (RAM)

b)

Dữ liệu kiểu tệp được lưu trữ ở bộ nhớ trong

c)

Dữ liệu kiểu tệp được lưu trữ ở bộ nhớ ngoài (đĩa mềm, đĩa cứng, CD, thiết bị nhớ flash)

d)

Các kiểu dữ liệu trong máy đều bị mất khi tắt nguồn điện

43.

Cho chương trình sau:


VAR F: TEXT; BEGIN


ASSIGN(F,'OUTPUT.DAT'); REWRITE (F); WRITELN(F,510+702-792); CLOSE(F); END.


Sau khi thực hiện chương trình, tệp "OUTPUT.DAT" có nội dung như thế nào

a)

420

b)

510720792

c)

510 720 -792

d)

510+720-792

44.

Cho chương trình sau:


VAR F: TEXT; BEGIN


ASSIGN(F,'OUTPUT.DAT'); REWRITE (F); WRITELN(F,510); CLOSE(F); END.


Sau khi thực hiện chương trình, tệp "OUTPUT.DAT" có nội dung như thế nào

a)

420

b)

510

c)

'510'

d)

Không có nội dung gì

45.

Để gắn tệp KQ.TXT cho biết tệp f1 ta sử dụng câu lệnh

a)

f1 :='KQ.TXT';

b)

KQ.TXT := f1;

c)

ASSIGN ('KQ.TXT',f1);

d)

ASSIGN (f1, 'KQ.TXT');

46.

Cho biết f1 là biến tệp văn bản và tệp KETQUA.TXT có nội dung đang lưu trữ là: Tich 2 so la: 20. Hãy cho biết sau khi thực hiện đoạn lệnh sau:

A:=10; B:=2; ASSIGN(F1,'KETQUA.TXT'); REWRITE (F1); WRITE(F1, 'Thuong 2 so la:', A DIV B); thi tệp ketqua.txt có nội dung gì

a)

Tich 2 so la: 20

b)

Thuong 2 so la: 5

c)

Tich 2 so la: 20Thuong 2 so la: 5

d)

Thuong 2 so la: 5Tich 2 so la: 20

47.

Thao tác dưới đây mang ý nghĩa gì với tệp? Readln (f2, x, y, z);

a)

Ghi tệp vào văn bản

b)

Mở để ghi

c)

Đưa dữ liệu ra màn hình

d)

Đọc dữ liệu từ tệp văn bản

48.

Nếu hàm chuẩn EOF (<ten-bien-tep>) cho giá trị TRUE nếu con trỏ tệp đang chỉ tới vị trí nào

a)

Đầu dòng

b)

Đầu tệp

c)

Cuối dòng

d)

Cuối tệp

49.

Nếu hàm chuẩn EOLN (<ten-bien-tep>) cho giá trị TRUE nếu con trỏ tệp đang chỉ tới vị trí nào

a)

Đầu dòng

b)

Đầu tệp

c)

Cuối dòng

d)

Cuối tệp