wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

KT TIN GK2

Total questions: 55

Worksheet time: 28mins

Name
Class
Date
1.

Cú pháp khai báo trực tiếp biến mảng 1 chiều:

a)

Var <tên biến mảng>: array [kiểu chỉ số] of <kiểu phần tử>;

b)

Var <tên biến mảng>: array [chỉ số đầu … chỉ số cuối] of <kiểu phần tử>;

c)

Var <tên biến mảng>: array [chỉ số đầu .. chỉ số cuối] of <kiểu phần tử>;

d)

Var <tên biến mảng>: array [kiểu chỉ số] of <kiểu dữ liệu>;

2.

Phát biểu nào sau đây đúng nhất:

a)

Kiểu chỉ số thường là một đoạn số nguyên liên tục

b)

Kiểu chỉ số phải là đoạn số nguyên

c)

Kiểu chỉ số có thể là đoạn số thực

d)

Kiểu chỉ số thuộc kiểu gì cũng được

3.

Phát biểu nào sau đây đúng nhất:

a)

Kiểu phần tử là kiểu dữ liệu của các phần tử trong mảng

b)

Kiểu phần tử cùng kiểu với kiểu chỉ số

c)

Kiểu phần tử phải là kiểu số

d)

Kiểu phần tử là kiểu của chỉ số đầu và chỉ số cuối

4.

Phương án nào dưới đây là khai báo mảng hợp lệ?

a)

Var mang : ARRAY[0..10] OF INTEGER;

b)

Var mang : ARRAY[0..10] OF INTERGER;

c)

Var mang : INTEGER OF ARRAY[0..10];

d)

Var mang : ARRAY(0..10) : INTEGER;

5.

Trong ngôn ngữ lập trình Pascal, về mặt cú pháp câu lệnh nào sau đây là đúng?

a)

Type mang : array[1-100] of real;

b)

Type 1chieu : array[1..100] of real;

c)

Type mang=array[1..100] of real;

d)

Type mang1c=array(1..100) of real;

6.

Câu lệnh dùng để nhập giá trị cho phần tử trong mảng

a)

readln(<Tên mảng>[<Kiểu chỉ số>]);

b)

readln(<Tên mảng>[<Biến đếm>]);

c)

readln(<Tên mảng>[<Chỉ số cuối>]);

d)

readln(<Tên mảng>[<Chỉ số đầu>]);

7.

Với khai báo biến mảng Var a:array [1..50] of real; các phần tử trong mảng có thể nhận giá trị nào trong các giá trị sau?

a)

1.0E3

b)

1.0D2

c)

1.0A1

d)

1.0C1

8.

Cho dãy số nguyên a gồm các phần tử: 2 3 4 5 1 6 3. Tham chiếu đến giá trị của phần tử thứ 3 ta viết

a)

4

b)

a[4]

c)

a[3]

d)

3

9.

Đoạn chương trình sau giải bài toán gì?

a)

Tìm số lớn nhất của dãy số

b)

Tìm số nhỏ nhất của dãy số

c)

So sánh các số trong dãy với số đầu tiên

d)

Tính tổng các phần tử trong mảng

10.

Trong ngôn ngữ lập trình Pascal câu lệnh nào sau đây là đúng cú pháp?

a)

For i:=1 to n do; if a[i] mod 2 = 0 then writeln(a[i], ‘la so le’);

b)

For i:=1 to n do if a[i] mod 2 = 0 then writeln(a[i] ‘la so le’);

c)

For i:=1 to n do if a[i] mod 2 = 0 then writeln(‘a[i], ‘la so le’);

d)

For i:=1 to n do if a[i] mod 2 = 0 then writeln(‘a[i], la so le’);

11.

Cho khai báo biến mảng sau:

Var a:array[0..16] of byte;

Câu lệnh nào sau đây in ra tất cả các phần tử của mảng.

a)

For i:=1 to 16 do write(a[i]);

b)

For i:= 0 to 15 do write(a[i]);

c)

For i:=16 downto 0 do write(a[i]);

d)

For i:=16 downto 1 do write(a[i]);

12.

Chương trình sau giải bài toán gì:

a)

Tính tổng các phần tử trong mảng là bội của k

b)

Tính tổng các phần tử trong mảng là bội của 5

c)

Tính tổng các phần tử chẵn trong mảng

d)

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

13.

Tham chiếu đến phần tử thứ i của mảng D được xác định bởi:

a)

D[',i',]

b)

D['i']

c)

D[i]

d)

D(i)

14.

Biểu thức điều kiện để kiểm tra một phần tử thứ i của mảng A có nằm trong (-5;10)?

a)

(A[i] > -5) or (A[i] < 10)

b)

(A[i] < -5) and (A[i] >10)

c)

(-5 < A[i] < 10)

d)

(A[i] > -5) and (A[i] < 10)

15.

Hãy cho biết kết quả xuất trên màn hình khi thực hiện chương trình sau:

a)

54

b)

16

c)

70

d)

60

16.

Chọn khẳng định đúng?

a)

Giá trị các phần tử trong cùng một mảng có thể khác kiểu dữ liệu

b)

Số lượng các phần tử lưu trữ trong mảng là vô hạn

c)

Nếu khai báo mảng 50 phần tử, khi nhập dữ liệu phải lưu trữ hết 50 phần tử đã khai báo

d)

Khi khai báo cho mảng kiểu dữ liệu nào thì phải nhập dữ liệu đúng kiểu dữ liệu đó

17.

Chọn khẳng định đúng?

a)

Kiểu chỉ số thường là một đoạn số nguyên liên tiếp có dạng n1..n2

b)

Kiểu chỉ số lưu trữ giá trị phần tử của mảng

c)

Kiểu chỉ số xác định cho phép mảng chỉ lưu trữ được giá trị số

d)

Kiểu chỉ số giới hạn phạm vi lưu trữ giá trị của các phần tử trong mảng

18.

Chọn khẳng định đúng?

a)

Tham chiếu tới phần tử trong mảng một chiều bằng cách xác định giá trị phần tử

b)

Tham chiếu tới phần tử trong mảng một chiều bằng cách xác định tên mảng

c)

Tham chiếu tới phần tử trong mảng một chiều bằng cách xác định vị trí phần tử

d)

Tham chiếu tới phần tử trong mảng một chiều bằng cách xác định số lượng phần tử

19.

Kiểu chỉ số là một đoạn số nguyên liên tục có dạng n1..n2, với n1, n2 thuộc kiểu dữ liệu nào?

a)

Kiểu dữ liệu logic

b)

Kiểu dữ liệu hằng số thực

c)

Kiểu dữ liệu hằng số nguyên

d)

Kiểu dữ liệu do người dùng định nghĩa

20.

Đoạn chương trình sau giải bài toán gì?

a)

Xuất ra màn hình giá trị các phần tử chẵn trong mảng

b)

Xuất ra màn hình các phần tử trong mảng

c)

Xuất ra màn hình vị trí các phần tử lẻ trong mảng

d)

Xuất ra màn hình vị trí các phần tử chẵn trong mảng

21.

Mảng một chiều là?

a)

Dãy các phần tử phải cùng giá trị. Mảng được đặt tên và mỗi phần tử có một chỉ số

b)

Dãy hữu hạn các phần tử cùng kiểu. Mảng được đặt tên và chỉ số các phần tử có thể trùng nhau

c)

Dãy hữu hạn các phần tử cùng kiểu. Mảng được đặt tên và mỗi phần tử của nó có một chỉ số

d)

Dãy hữu hạn các phần tử khác kiểu. Mảng được đặt tên và mỗi phần tử của nó có một chỉ số

22.

Để mô tả mảng một chiều cần xác định?

a)

Kiểu của các phần tử và cách đánh số các phần tử của nó

b)

Giá trị của các phần tử và cách đánh số các phẩn tử của nó

c)

Kiểu của các phần tử và giá trị các phần tử của nó

d)

Kiểu của các chỉ số và giá trị của các phần tử

23.

Cách để nhập giá trị cho mảng một chiều gồm 50 phần tử?

a)

Nhập một lần 50 phần tử vào mảng

b)

Nhập lần lượt các giá trị từ phần tử thứ 1 đến phần tử thứ 50

c)

Nhập giá trị vào vị trí ngẫu nhiên của phần tử cho đến khi đủ 50 phần tử

d)

Nhập giá trị các phần tử vào lần lượt và tự động chương trình dịch sẽ sắp xếp lưu trữ theo thứ tự từ phần tử có giá trị nhỏ đến phần tử có giá trị lớn

24.

Để nhập mảng, đoạn lệnh nào đúng?

a)

b)

c)

d)

25.

Điều kiện để kiểm tra phần tử chẵn và dương trong mảng A có N phần tử?

a)

If A[i] mod 2 = 0 and A[i] >0 then

b)

If (A[i] mod 2 = 0) and (A[i] >0) then

c)

If A[i] mod 2 = 0 or A[i] >0 then

d)

If (A[i] mod 2 = 0) or (A[i] >0) then

26.

Trong Pascal, xâu không có kí tự nào được gọi là:

a)

Xâu rỗng

b)

Xâu số

c)

Xâu không hợp lệ

d)

Xâu kí tự trắng

27.

Để khai báo kiểu xâu trực tiếp ta sử dụng cú pháp nào?

a)

Var <tên biến> : <tên kiểu>;

b)

Var <tên biến> : String[độ dài của lớn nhất của xâu];

c)

Var <tên biến> = <tên kiểu>;

d)

Var <tên biến> = String[độ dài lớn nhất của xâu];

28.

Trong các khai báo sau, khai báo nào đúng?

a)

Var hoten : string[27];

b)

Var diachi : string(100);

c)

Var ten = string[30];

d)

Var ho = string(30);

29.

Khai báo biến kiểu xâu nào là không hợp lệ?

a)

Var St: String[256];

b)

Var St: String[10];

c)

Var St: String;

d)

Var St: String[0];

30.

Trên dữ liệu kiểu xâu có các phép toán nào?

a)

Phép toán so sánh và phép gán

b)

Phép so sánh và phép nối

c)

Phép gán và phép nối

d)

Phép gán, phép nối và phép so sánh

31.

Trong các phát biểu sau, phát biểu nào sai?

a)

Xâu A lớn hơn xâu B nếu độ dài xâu A lớn hơn độ dài xâu B

b)

Xâu A lớn hơn xâu B nếu kí tự dầu tiên khác nhau giữa chúng kể từ trái sang trong xâu A có mã ASCII lớn hơn

c)

Nếu A và B là các xâu có độ dài khác nhau và A là đoạn đầu của B thì A nhỏ hơn B

d)

Hai xâu bằng nhau nếu chúng giống nhau hoàn toàn

32.

Xâu ‘ABBA’ lớn hơn xâu:

a)

‘ABC’;

b)

‘ABABA’;

c)

‘ABCBA’;

d)

‘BABA’;

33.

Xâu A = ‘ABBA’ nhỏ hơn xâu:

a)

‘A’;

b)

‘B’;

c)

‘AAA’;

d)

‘ABA’;

34.

Cho A = ‘abc’; B = ‘ABC’; Khi đó A + B cho kết quả nào?

a)

‘aAbBcC’;

b)

‘abcABC’;

c)

‘AaBbCc’;

d)

‘ABCcbc’;

35.

Thủ tục delete(st,p,n) thực hiện:

a)

Xóa n kí tự của biến xâu st bắt đầu từ vị trí p

b)

Xóa p kí tự của biến xâu st bắt đầu từ vị trí n

c)

Xóa các kí tự của biến xâu st bắt đầu từ vị trí n đến vị trí n

d)

Xóa các kí tự của biến xâu st bắt đầu từ vị trí p đến vị trí p

36.

Cho xâu s = ‘123456789’, sau khi thực hiện thủ tục delete(s,3,4) thì:

a)

S = ‘1256789’;

b)

S = ‘12789’;

c)

S = ‘123789’;

d)

S = ‘’;

37.

Thủ tục insert(s1,s2,p) thực hiện:

a)

Chèn xâu s1 vào xâu s2 bắt đầu ở vị trí p

b)

Chèn xâu s2 vào xâu s1 bắt đầu ở vị trí p

c)

Chèn p kí tự của xâu s1 vào đầu xâu s2

d)

Chèn p kí tự của xâu s2 vào đầu xâu s1

38.

Trong Pascal, hàm Length(S) cho kết quả là gì?

a)

Số ký tự của xâu không tính dấu cách cuối cùng

b)

Độ dài tối đa của xâu S khi khai báo

c)

Độ dài hiện có của xâu S

d)

Số ký tự hiện có của xâu S không tính các dấu cách

39.

Hàm copy(S, vt, N) thực hiện:

a)

Tạo xâu mới gồm kí tự N tại vị trí vt của xâu S

b)

Tạo xâu mới gồm kí tự vt tại vị trí N của xâu S

c)

Tạo xâu mới gồm N kí tự tại vị trí vt của xâu S

d)

Tạo xâu mới gồm N kí tự tại vị trí vt của xâu ST

40.

Hàm pos(S1, S2) thực hiện:

a)

Cho biết vị trí xuất hiện của xâu S1 trong xâu S2

b)

Cho biết vị trí xuất hiện đầu tiên của xâu S1 trong xâu S2

c)

Cho biết vị trí xuất hiện đầu tiên của xâu S2 trong xâu S1

d)

Cho biết vị trí xuất hiện của xâu S2 trong xâu S1

41.

Cho xâu s1 = ‘123’; s2 = ‘abc’ sau khi thực hiện thủ tục Insert(s1,s2,2) thì:

a)

s1 = ‘123’; s2 = ‘a123bc’

b)

s1 = ‘1abc23’; s2 = ‘abc’

c)

s1 = ‘123’; s2 = ‘12abc’

d)

s1 = ‘ab123; s2 = ‘abc’

42.

Cho s1 = ‘010’; s2 = ‘1001010’ hàm pos(s1,s2) cho giá trị bằng:

a)

3;

b)

4;

c)

5;

d)

0;

43.

Cho s = ‘123456789’ hàm Copy(s,2,3) cho giá trị bằng:

a)

‘234’;

b)

234;

c)

‘34’;

d)

34;

44.

Cho S= 'Thu do Ha Noi', thủ tục Delete(S,1,6); cho kết quả:

a)

'THa Noi'

b)

' Ha Noi'

c)

'Thu do'

d)

'Ha Noi'

45.

Câu lệnh nào thực hiện in xâu S theo thứ tự ngược lại (ví dụ: abcd thì in ra màn hình là dcba)

a)

For i:= 1 to length(S) do write(S[i]);

b)

For i:= 1 to length(S) do writeln(S);

c)

For i:= length(S) downto 1 do write(S);

d)

For i:= length(S) downto 1 do write(S[i]);

46.

Đoạn chương trình sau là gì:

for i:= 10 downto 1 do write (i,' ');

a)

2 4 5 6 7 8

b)

1 2 3 4 5 6 7 8 9 10

c)

Câu lệnh sai

d)

10 9 8 7 6 5 4 3 2 1

47.

Cho xâu S = 'Ha Noi-Viet Nam'. Hàm Length(S) trả về giá trị là:

a)

14

b)

16

c)

15

d)

13

48.

Kết quả của đoạn chương trình sau:

a)

Xóa các kí tự số

b)

Đếm các kí tự có trong xâu

c)

Đếm số dấu cách có trong xâu

d)

Xóa đi các dấu cách trong xâu

49.

Phát biểu nào sau đây là sai:

a)

Xâu A lớn hơn xâu B nếu kí tự đầu tiên khác nhau giữa chúng kể từ trái sang trong xâu A có mã ASCII lớn hơn

b)

Thủ tục insert(s1,s2,vt) thực hiện chèn xâu s2 vào xâu s1 bắt đầu từ vị trí vt

c)

Hàm pos(s1,s2) cho vị trí xuất hiện đầu tiên của xâu s1 trong xâu s2

d)

Hàm length(s) trả về giá trị là độ dài của xâu s

50.

Hãy cho biết đẳng thức nào sau đây là sai

a)

‘CAN THO’ < ’TAN AN’

b)

‘TAN AN’ > ‘LONG AN’

c)

‘CAN GIUOC’ > ‘CAN DUOC’

d)

‘TAN AN’ = ‘’Tan An

51.

Chọn khẳng định đúng?

a)

Độ dài xâu chính là số lượng kí tự trong phần khai báo

b)

Độ dài xâu chính là độ dài mặc định 255

c)

Độ dài xâu chính là số lượng kí tự trong xâu

d)

Độ dài xâu chính là số lượng từ trong xâu

52.

Chọn điều kiện để kiểm tra kí tự số trong xâu A?

a)

If (A[i] >=0) and (A[i] <=9) then

b)

If (A[i] <0) and (A[i] >9) then

c)

If (A[i] <’0’) and (A[i] >’9’) then

d)

If (A[i] >=’0’) and (A[i] <=’9’) then

53.

Chọn điều kiện để kiểm tra loại bỏ kí tự thường trong xâu A?

a)

If (A[i] >=’a’) or (A[i] <=’z’) then

b)

If (A[i] <’a’) or (A[i] >’z’) then

c)

If (A[i] <’a’) and (A[i] >’z’) then

d)

If (A[i] >=’a’) and (A[i] <=’z’) then

54.

Chọn biểu thức để tạo xâu B mới từ xâu A đã có?

a)

B=B+A[I];

b)

B=A[I];

c)

B:=B+A[I];

d)

B:=A+A[I];

55.

Lệnh để khởi tạo xâu B mới?

a)

B:=0;

b)

B:= B+ A[i];

c)

B:=B+1;

d)

D. B:=’’;