Kiểu dữ liệu có cấu trúc

Phong Thanh

Câu 1

Sau khi thực hiện đoạn chương trình sau, thì biến X có giá trị là bao nhiêu?
A:= 4 ; B: = 1; X:= 2 ;
IF A + B > 5 THEN X := X + A + B; WRITE (X);

A. 0

B. 7

C. 5

D. 2

Câu 2

Cách khai báo xâu kí tự nào sau đây là đúng:

A. Var S: Strings[255];

B. Var S: Strings;

C. Var S: Char;

D. Var S: String;

Câu 3

Hãy điền vào chỗ (…).

S:= 'Le Loi Dong Ha' ; Delete ( S ,…, ...); để thu được kết quả S= 'Dong Ha'

A. 1,7

B. 1,9

C. 7,7

D. 1,8

Câu 4

Khi chạy chương trình :
Var St : String;
i,L : integer;
Begin
St:='ABCD' L := Length(St);
For i:= L Downto 1 do write (St[i]);

End.
Chương trình in ra :

A. DCAB

B. 4321

C. DCBA

D. ABCD

Câu 5

hàm length(s) cho kết quả gì?

A. Số kí tự hiện có của xâu S;

B. Số kí tự hiện có trong xâu S không tính các khoảng trắng(Kí tự trắng, khoảng cách);

C. Độ dài xâu S khi khai báo;

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

Câu 6

Khi chạy chương trình:
Var S, i, j : Integer;
Begin
S := 0;
for i:= 1 to 3 do
for j:= 1 to 4 do S := S + 1 ;
End.
Giá trị sau cùng của S là :

A. 0

B. 4

C. 12

D. 3

Câu 7

Cho khai báo mảng sau:

Var P: array [1..50] of word;

Tham chiếu đến một phần tử của mảng P nào sau đây là SAI?

A. P[0]

B. P[50]

C. P[30]

D. P[15]

Câu 8

Lệnh Write trong đoạn chương trình sau thực hiện bao nhiêu lần ?

FOR i:=1 TO 3 DO

FOR j:=2 TO 5 DO Write (i,' ',j);

A. 3 lần

B. 5 lần

C. 12 lần

D. 9 lần

Câu 9

Cho khai báo sau :

Var Xau: string;

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

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

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

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

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

Câu 10

Cho biết câu lệnh sau sai ở đâu? IF DTB>5 then Write(‘Do’); Else Write(‘Truot’);

A. Đồng thời viết cả giá trị Đỗ, trượt

B. Chưa biết giá trị của ĐTB

C. Thừa dấu chấm phẩy (;) trước từ khóa Else

D. Tất cả đều sai

Câu 11

phần tử đầu tiên của xâu kí tự mang chỉ số là:

A. 0

B. 1

C. Do người lập trình khai báo

D. Không có chỉ số

Câu 12

hàm Upcase(ch); cho kết quả là:

A. Biến ch thành chữ thường;

B. Xâu ch toàn chữ hoa;

C. Xâu ch toàn chữ thương;

D. Chữ cái in hoa tương ứng với ch;

Câu 13

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

A. S = ‘’;

B. S = ‘123789’;

C. S = ‘1256789’;

D. S = ‘12789’;

Câu 14

Khi chạy chương trình :

Var

St : string;

i, L : integer;

Begin

St :='Hoc thay khong tay hoc ban’; L:=Length(St);

For i := 1 to L do

If (St[i] >= 'a') and (St[i] <= 'z') then

St[i]:= Upcase (St[i]);

Write (St);

End.

-Chương trình in ra :

A. HOC THAY KHONG TAY HOC BAN

B. Hoc thay khong tay hoc ban

C. hoc thay khong tay hoc ban

D. Hoc Thay Khong Tay Hoc Ban

Câu 15

Đoạn chương trình sau đây dùng để thực hiện công việc gì?

For i:=1 to n do

If i mod 2 = 0 then Writeln(A[i],’ ‘);

A. In ra màn hình giá trị của các phần tử có chỉ số chẵn trong mảng

B. In ra màn hình giá trị của các phần tử có giá trị chẵn trong mảng

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

D. Tất cả đều đúng

Câu 16

thủ tục Insert(S1,S2,n) thực hiện công việc gì?

A. Chèn thêm xâu S2 vào xâu S1 bắt đầu từ vị trí n của S1;

B. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S1;

C. Chèn thêm xâu S1 vào xâu S2 bắt đầu từ vị trí n của S2;

D. Chèn thêm xâu S2 vào xâu S2 bắt đầu từ vị trí n của S1;

Câu 17

Chương trình sau thực hiện công việc gì?

X:= length(s);

For i:=x downto 1 do

If S[i] =’ ‘ then delete(s,i,1); {‘ ’ là khoảng trắng}

A. Xóa khoảng trắng tại vị trí cuối cùng trong xâu kí tự S;

B. Xóa khoảng trắng đầu tiên trong xâu kí tự S;

C. Xóa khoảng trắng thừa trong xâu kí tự S;

D. Xóa mọi khoảng trắng trong xâu kí tự S;

Câu 18

Vòng lặp nào có biến đếm tự động tăng lên một đơn vị sau một lần thực hiện câu lệnh?

A. Repeat…Until…

B. For …to…do…

C. For …downto…do…

D. While…do…

Câu 19

Cho St là biến chuỗi và St:=’AAABAAB’; Sau khi thực hiện hai lệnh:
While St[1]=’A’ do Delete(St,1,1);
Write(St);
Kết qủa in ra là:

A. BB

B. BAAB

C. AABAAB

D. AAA

Câu 20

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

A. 3;

B. 4;

C. 5;

D. 0;

Câu 21

với xâu kí tự ta có thể:

A. Gán biến xâu cho biến xâu và gán một kí tự cho biến xâu;

B. So sánh hai xâu kí tự;

C. So sánh và gán một biến xâu cho biến xâu.

D. So sánh hai xâu kí tự, gán biến xâu cho biến xâu và gán một kí tự cho biến xâu;

Câu 22

sau khi thực hiện đoạn chương trình sau, giá trị của biến S là:

S:=’Ha Noi mua thu’;

Delete(S,7,8);

Insert(‘Mua thu ‘,S,1);

A. ‘Mua thu Ha Noi’;

B. ‘Ha Noi Mua thu’;

C. ‘Ha Noi’;

D. ‘Mua thu Ha Noi mua thu’;

Câu 23

Cho khai báo:
Var A: Array[1..4] of Integer ;
i : Integer ;
Sau khi thực hiện các lệnh:
For i:=1 to 4 do A[i]:= i;
For i:=1 to 4 do A[i]:= A[i]+1;
thì mảng A có gía trị là :

A. A[1]=0, A[2]=1, A[3]=2, A[4]=3

B. A[1]=1, A[2]=2, A[3]=3, A[4]=4

C. A[1]=1, A[2]=1, A[3]=1, A[4]=1

D. A[1]=2, A[2]=3, A[3]=4, A[4]=5

Câu 24

Hằng xâu Le Minh Xuan được viết như thế nào?

A. "Le Minh Xuan"

B. ‘Le Minh Xuan"

C. Le Minh Xuan

D. ‘Le Minh Xuan’

Câu 25

Cho đoạn chương trình sau
If(a< >0) then x:=9 div a

Else x:=-1;
Write(‘ x= ‘, x + 1);
Khi cho a=0 thị đoạn chương trình trên sẽ in ra màn hình giá trị x=?

A. x là không xác định

B. x=0;

C. x=1

D. x= -1

Câu 26

Var A:Array[1..200] of real;

Nhóm lệnh nào sau đây dùng để nhập giá trị cho tất cả các phần tử trong mảng?

A. For i:= 1 to 200 do Readln(A[1]);

B. For i:= 1 to 200 do Readln(A[i]);

C. For i:= 1 to 200 do Writeln(i);

D. For i:= 1 to 200 do Writeln(A[i]);

Câu 27

Cho biết kết quả khi thực hiện đoạn chương trình sau:

d:=0;

For i:=1 to 10 do d:= d+1;

Write(d);

A. 11

B. 1

C. 10

D. 0

Câu 28

phần mở rộng của tập tin Pascal chứa tối đa bao nhiêu kí tự?

A. 16

B. 8

C. 32

D. 64

Câu 29

đoạn chương trình sau thực hiện công việc nào trong các công việc sau:

i:=pos(‘ ‘,S); {‘ ’ là 2 dấu cách}

While i<>0 do

Begin

Delete(s, i, 1);

i:=pos(‘ ‘, s);

End;

A. Xóa đi 1 dấu cách trong 2 dấu cách liên tiếp trong xâu s để s không còn 2 dấu cách liền nhau;

B. Xóa các dấu cách liền nhau cuối cùng trong xâu;

C. Xóa đi 1 trong 2 dấu cách đầu tiên trong xâu;

D. Xóa hai dấu cách liên tiếp nhau đầu tiên trong xâu;

Câu 30

Var A; string[20]; Xâu A có thể chứa?

A. 256 kí tự

B. 255 kí tự

C. Báo lỗi

D. 20 kí tự

Câu 31

Trong các hàm sau, hàm nào cho kết quả là độ dài thực sự của xâu st

A. Length(st);

B. Copy(st1,m,n);

C. Upcase(ch);

D. Pos(st1,st2);

Câu 32

Cho s = ‘500 ki tu’, hàm Length(s) cho giá trị bằng:

A. 500

B. ‘5’

C. ‘500’

D. 9

Câu 33

Đoạn chương trình sau viết những gì ra màn hình?
m:=5 ; n: =3 ;
If m < n then Writeln ( m , ‘ x ’ , n , ‘ = ‘, m*n )
Else Writeln( m , ‘ + ’ , n , ‘ = ‘, m+n );

A. m + n = 8

B. m x m = 15

C. 5 + 3 = 8

D. 5 x 3 = 15

Câu 34

Cho str 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(str) downto 1 do write(str[i]) ;

A. In từng kí tự ra màn hình theo thứ tự ngược

B. In xâu ra màn hình

C. In từng kí tự xâu ra màn hình

D. In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên.

Câu 35

Trong quá trình nhập dữ liệu của mảng một chiều, để giá trị i cũng tăng theo phần tử thứ i ta viết như sau:

A. Write(‘A[i]=’); readln(A[i]);

B. Write(‘A[‘i’]=’); readln(A[i]);

C. Write(“A[“,i,”]=”); readln(A[i]);

D. Write(‘A[‘,i,’]=’); readln(A[i]);

Câu 36

Câu lệnh lặp biết trước số lần lặp:

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

Thì số lần lặp được tính theo công thức nào sau đây?

A. Giá trị cuối – giá trị đầu – 1

B. Giá trị đầu – giá trị cuối + 1

C. Giá trị cuối – giá trị đầu + 1

D. Giá trị cuối + giá trị đầu + 1

Câu 37

Var A: array[1..10] of integer;

Chọn câu lệnh sai trong các câu lệnh sau:

A. A[2]:= 30;

B. A[4]:=0;

C. A[3]:=-5;

D. A[1]:= 2.5;

Câu 38

Đoạn chương trình: Max:=a; IF b>Max Then Max:=b. Hãy cho biết đoạn chương trình trên dùng để:

A. Tìm giá trị lớn nhất trong 2 số a và b

B. Tìm giá trị lớn nhất trong 2 số a

C. Tính giá trị b

D. Tính giá trị a

Câu 39

Khi chạy chương trình :
Var St : string;
i, L : integer;
Begin
St :='So Buu chinh Vien thong' L:=Length(St);
For i := 1 to L do
If (St[i] >= 'a') and (St[i] <= 'z') then

St[i]:= Upcase (St[i]);
Write (St);

Readln
End.
Chương trình in ra :

A. So Buu chinh Vien Thong

B. So Buu Chinh Vien Thong

C. so buu chinh vien thong

D. SO BUU CHINH VIEN THONG

Câu 40

S:= 'ABCDEG ' ;

Delete ( S ,2, 3); thu được kết quả :

A. S=‘AEG’

B. S=‘ABG’

C. S=‘ADEG’

D. S=‘ABEG’

Câu 41

thủ tục chèn xâu S1 vào xâu S2 bắt đầu từ vị trí vt được viết:

A. Insert(vt,S1,S2);

B. Insert(S1,S2,vt);

C. Insert(S2,S1,vt);

D. Insert(S1,vt,S2);

Câu 42

Xâu kí tự là?

A. Tập hợp các chữ cái và các chữ số trong bảng chữ cái tiếng Anh;

B. Tập hợp các chữ cái trong bảng chữ cái tiếng Anh;

C. Dãy các kí tự trong bảng mã ASCII;

D. Mảng các kí tự;

Câu 43

Cho a:=3; b:=5. Câu lệnh IF a>b Then a:=4 Else b:=1; Sau khi thực hiện đoạn chương trình trên đáp án nào đúng?

A. a=4

B. b=1

C. a=3

D. b=5

Câu 44

Xâu ‘ABBA’ NHỎ hơn xâu:

A. ‘ABABAB’ ;

B. ‘ABA’;

C. ‘ABABA’;

D. ‘ABC’;

Câu 45

Var a, b: array[1..10] of integer;

Tính tổng số phần tử trong đoạn khai báo trên?

A. 40

B. 10

C. 30

D. 20

Câu 46

Câu lệnh rẽ nhánh IF gồm có mấy dạng?

A. 4

B. 2

C. 1

D. 3

Câu 47

Tên nào đặt Sai quy định của Pascal:

A. Noi sinh;

B. Ngaysinh;

C. Giai_Ptrinh_Bac_2;

D. Sv2000 ;

Câu 48

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

A. ‘aAbBcC’;

B. ‘abcABC’;

C. ‘ABCcbc’;

D. ‘AaBbCc’;

Câu 49

Cho St là biến xâu, sau khi thực hiện các lệnh:

St:=’TINHOC11’;

Delete(St, 4, 3);

-Kết qủa in lên màn hình là:

A. TINHOC

B. TINH1

C. HOC11

D. TIN11

Câu 50

Cho khai báo:
Var A: Array[1..4] of Real;
i : Integer ;
Ðể nhập dữ liệu cho A, chọn câu nào :

A. Write(‘ Nhập A:’); Readln(A);

B. For i:=1 to 4 do Write(‘ Nhập A[‘, i, ‘]:’); Readln(A[i]);

C. For i:=1 to 4 do Readln(‘ Nhập A[‘, i, ‘]:’);

D. For i:=1 to 4 do Begin Write(‘ Nhập A[‘, i, ‘]:’); Readln(A[i]); End;


Các câu hỏi tương tự
man ok
Xem chi tiết
man ok
Xem chi tiết
Khoi Tran
Xem chi tiết
CHANNANGAMI
Xem chi tiết
Ưu Vô
Xem chi tiết
CHANNANGAMI
Xem chi tiết
Như Quỳnh Nguyễn
Xem chi tiết
Học Thái
Xem chi tiết
CHANNANGAMI
Xem chi tiết