Trong ngôn ngữ lập trình Pascal, để in một xâu ký tự ra màn hình theo thứ tự ngược lại

Họ và tên:..................................................................... Lớp: ............................Câu 1: Trong ngôn ngữ lập trình Pascal, xâu kí tự có tối đa ?A. 255 kí tự;B. 256 kí tự;C. 16 kí tự;D. 8 kí tự;Câu 2: Trong ngôn ngữ lập trình Pascal, khai báo nào trong các khai báo sau là SAI khi khai báo xâu kítự ?A. VAR S : STRING[256];B. VAR X1 : STRING[1];C. VAR X1 : STRING[100];D. VAR S : STRING;Câu 3: Cho khai báo mảng và đoạn chương trình như sau:VAR A : ARRAY[0..50] OF real;BEGINk := 0;FOR i:= 1 TO 50 DOIF A[i] > A[k] THEN k := i;END.Đoạn chương trình trên thực hiện công việc gì dưới đây ?A. Tìm phần tử nhỏ nhất trong mảngB. Tìm phần tử lớn nhất trong mảngC. Tìm chỉ số của phần tử nhỏ nhất trong mảng D. Tìm chỉ số của phần tử lớn nhất trong mảngCâu 4: Trong ngôn ngữ lập trình Pascal, với khai báo như sau :Type mang = ARRAY[1..100] of integer ;Var a, b : mang ;c : array[1..100] of integer ;Câu lệnh nào dưới đây là hợp lệ ?A. b := c ;B. a := b ;C. a := c ;D. c := b ;Câu 5: Trong ngôn ngữ lập trình Pascal, sau khi thực hiện đoạn chương trình sau, biến X có giá trị là gì?S := ‘Hoang Anh Tuan’ ;X := ‘ ’ ;i := length(S) ;while S[i] <> ‘ ’ doBeginX := X + S[i] ; i := i + 1 ;End ;A. ‘Anh’B. Xâu rỗngC. ‘Hoang’D. ‘Tuan’Câu 6: 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 DO write(ST[i]) ;A. In từng kí tự ra màn hình theo thứ tự ngược, trừ kí tự đầu tiên;B. In từng kí tự xâu ra màn hình;C. In xâu ra màn hình;D. In từng kí tự ra màn hình theo thứ tự ngược;Câu 7: Trong ngôn ngữ lập trình Pascal, trong quá trình nhập dữ liệu của mảng một chiều A, để các phầntử hiển thị như trong cửa sổ chương trình ta viết lệnh 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 8: Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện công việc gì ?X := length(S) ;For i := X downto 1 doIf S[i] = ‘ ’ then Delete(S, i, 1) ; { ‘ ’ là một dấu cách }A. Xóa dấu cách đầu tiên trong xâu ký tự SB. Xóa dấu cách tại vị trí cuối cùng của xâu SC. Xóa mọi dấu cách của xâu SD. Xóa dấu cách thừa trong xâu ký tự SCâu 9: Trong ngôn ngữ lập trình Pascal, sau khi chương trình thực hiện xong đoạn chương trình sau, giátrị của biến S là ?S := ‘Ha Noi Mua thu’;Trang 1/2 - Mã đề thi 061Delete(S,7,8);Insert(‘Mua thu’, S, 1);A. Ha Noi Mua thu;B. Mua thu Ha Noi;C. Ha Noi;D. Mua thu Ha Noi mua thu;Câu 10: Trong ngôn ngữ lập trình Pascal, xâu kí tự không có kí tự nào gọi là ?A. Xâu trắng;B. Xâu không;C. Xâu rỗng;D. Không phải là xâu kí tự;Câu 11: Cho khai báo sau: VAR hoten : STRING;Phát biểu nào dưới đây là đúng?A. Xâu có độ dài lớn nhất là 0;B. Câu lệnh sai vì thiếu độ dài tối đa của xâu;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;Câu 12: Trong ngôn ngữ lập trình Pascal, để in một xâu kí tự ra màn hình theo thứ tự ngược lại của cácký tự trong xâu (vd : abcd thi in ra là dcba), đoạn chương nào sau đây thực hiện việc gì ?A. For i := length(S) downto 1 do write(S)B. For i := length(S) downto 1 do write(S[i])C. For i := 1 to length(S) do write(S[i])D. For i := 1 to length(S) div 2 do write(S[i])Câu 13: Phát biểu nào sau đây về kiểu mảng là SAI?A. Độ dài tối đa của mảng là 255;B. Có thể xây dựng mảng nhiều chiều;C. Chỉ số của mảng không nhất thiết bắt đầu từ 1;D. Xâu kí tự cũng có thể xem như là một loại mảng;Câu 14: Cho xâu S:= ‘Ha_Noi_Mua_Thu’; Kết quả trả về cho S trong câu lệnh DELETE(S,7,10); làA. Ha_NoiB. Ha_noiC. Ha NoiD. Lỗi cú phápCâu 15: Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện việc nào trong các việc sau ( Alà mảng số có N phần tử) ?S := 0 ;For i := 1 to N do S := S + A[i] ;A. Tính tổng các phần tử của mảng A;B. Không thực hiện việc nào trong 3 việc trên.C. Đếm số phần tử của mảng A;D. In ra màn hình mảng A;Câu 16: Đoạn chương trình sau in ra kết quả nào ?Program Welcome ;Var a : string[10];Begina := ‘tinhoc ’;writeln(length(a));End.A. Chương trình có lỗi; B. 6;C. 10;D. 7;Câu 17: Cho xâu S là ‘AbABabABab’.Kết quả của hàm POS(‘AB’,S) là:A. 1;B. 5;C. 8;D. 3;Câu 18: Cho khai báo mảng như sau:VAR M: ARRAY[0..10] OF Integer ;Phương án nào dưới đây chỉ phần tử thứ 10 của mảng ?A. M[9];B. M(9);C. M(10);D. M[10];Câu 19: Cho khai báo sau :VAR A: ARRAY[0..16] OF 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 trên?A. FOR k := 16 DOWNTO 0 DO write(a[k]);B. FOR k:= 0 TO 15 DO write(a[k]);C. FOR k := 16 DOWN TO 0 write(a[k]);D. FOR k := 1 TO 16 DO write(a[k]);Câu 20: Trong ngôn ngữ lập trình Pascal, đoạn chương trình sau thực hiện công việc gì?A. Xóa đi các ký tự số;C. Đếm số dấu cách có trong xâu;B. Đếm số ký tự có trong xâu;D. Xóa đi các dấu cách trong xâu;----------- HẾT ---------Trang 2/2 - Mã đề thi 061

Var ten_xau: STRING[độ dài của xâu];

hoặc Var ten_xau:string;

Xâu ký tự trong bộ nhớ nó chiếm số byte bằng số ký tự cực đại được khai báo cộng với byte đầu tiên chứa số ký tự hiện có của xâu. Độ dài tối đa của xâu ký tự là 255.

- Cách nhập/xuất: Cách đọc hay viết kiểu STRING cũng tương tự như các kiểu dữ liệu khác, ta sử dụng các thủ tục READ, hoặc WRITE.


Ví dụ: 
Readln(st);
Writeln(st);

- Truy cập từng phần tử của xâu ký tự: tương tự mảng 1 chiều: thông qua tên biến kiểu STRING và chỉ số của nó


Ví dụ: 
St := 'Le Thanh Lam';
write(st[4]);
-> Kết quả: cho ra chữ T.

Các thao tác trên xâu ký tự:



1/ Phép cộng xâu:

Ví dụ:

st1:=’Le’; st2:=’Thanh’; St=st1 + st2; 

-> KQ: ‘Le Thanh’

2/ Phép so sánh: 


Hai xâu ký tự có thể so sánh với nhau bằng các phép so sánh =, >, <…
Nguyên tắc so sánh thực hiện như sau, chúng sẽ đem từng ký tự tương ứng với nhau để so sánh, xâu nào có ký tự có số thứ tự trong bảng mã ASCII lớn hơn thì xâu đó lớn hơn.
Hai xâu ký tự được gọi là bằng nhau khi chúng hoàn toàn giống nhau (có độ dài như nhau).
Ví dụ: ‘FILENAME’ = ’FILENAME ‘

3/ Các thủ tục và hàm chuẩn xử lý xâu ký tự


a. Hàm length(st): cho độ dài thực của xâu ký tự
ví dụ: st:=’le thanh’ thì LENGTH(st) cho bằng 8.

b/ Thủ tục DELETE(st, pos, num): xóa num ký tự trong xâu st kể từ vị trí pos


Ví dụ: st= ‘FILENAME’
Delete(st,5,4) lúc đó st cho ra là ‘FILE’

c/ Thủ tục INSERT(obj, st, pos): Thủ tục cho kết quả bằng cách chèn xâu ký tự có tên là Obj vào xâu st tại vị trí pos, những ký tự đứng sau pos sẽ được dời vềphía sau của xâu ký tự obj.


Ví dụ: obj:= ‘Thanh ‘
st:=’Le Lam’;
INSERT(obj,st,4) lúc đó st=’Le Thanh Lam’;

d/ Thủ tục STR(value, st): Thủ tục này thực hiện việc chuyển đối giá trị kiểu số(value) sang dạng xâu ký tự và gán cho biến st.


Ví dụ: n là một só nguyên có giá trị: n:=150;
STR(n:5,st) sẽ cho kết quả xâu st là: st=’ 150’;

e/ Thủ tục VAL(st, value,code) đối một xâu ký tự st sang dạng số và gán cho biến value, nếu biến đối thành công thì code sẽ nhận giá trị bằng 0. ngược lại thì cho giá trị khác không


Ví dụ: VAL(‘123’,value,code) lúc này code sẽ nhận giá trị bằng 0 và value=123

f/ Hàm COPY(st, pos, num): sao chép trong xâu st, num ký tự tại vị trí pos,


Ví dụ: st=’Le Thanh Lam’
COPY(st,4,5) = ‘Thanh’;

g/ Hàm CONCAT(s1,s2,…,sn): hàm cho ra 1 xâu mới bằng cách nối đuôi các xâu s1,s2,…,sn lại với nhau.


Ví dụ: CONCAT(‘Le ’,’Thanh ‘, ‘Lam’) = ‘Le Thanh Lam’;

h/ Hàm POS(st1,st2): hàm cho tavị trí tìm thấy đầu tiên của xâu s1 trong xâu s2.


Ví dụ: POS(‘Lam’,‘Le Thanh Lam’) = 10;

i/ Hàm Length(st): cho kết quả là một số nguyên chỉ chiều dài của chuỗi st.

ví dụ: lenght('PASCAL') --> 6

j/ Hàm UPCASE(Ký_tự)--> Đổi Ký_tự thành "KÝ_TỰ" in hoa

4. Truy xuất từng ký tự trong chuỗi

Có thể kết hợp dùng vòng lặp truy xuất các ký tự trong chuỗi.

Ví dụ: In ra các ký tự của chuỗi st[i] ra màn hình theo từng dòng

for i:=1 to 6 do writeln(st[i]);

  • Trong ngôn ngữ lập trình Pascal, để in một xâu ký tự ra màn hình theo thứ tự ngược lại
    Tải app VietJack. Xem lời giải nhanh hơn!

Câu 1: Độ dài tối đa của xâu kí tự trong PASCAL là:

A. 256

B. 255

C. 65535

D. Tùy ý

Hiển thị đáp án

Trả lời: Độ dài tối đa của xâu kí tự trong Pascal là 255 kí tự. Trong mô tả xâu có thể bỏ qua phần khai báo độ dài, khi đó độ dài lớn nhất của xâu sẽ nhận giá trị ngầm định là 255.

Đáp án: B

Câu 2: Cho xâu S là ‘Hanoi-Vietnam’. Kết quả của hàm Length(S) là:

A. 12

B. 13

C. 14

D. 15

Hiển thị đáp án

Trả lời: Hàm Length(s) là hàm cho biết độ dài của xâu s (số kí tự có trong xâu bao gồm cả dấu cách, dấu -, các dấu đặc biệt).

Đáp án: B  

Câu 3: Cho xâu S là ‘Hanoi-Vietnam’. Kết quả của hàm Pos(‘Vietnam’,S) là

A. 5

B. 6

C. 7

D. 8

Hiển thị đáp án

Trả lời: Hàm Pos(s1, s2) cho biết vị trí xuất hiện đầu tiên của xâu s1 trong s2.

Kết quả của hàm Pos(‘Vietnam’,S) là vị trí kí tự V đầu tiên trong S → kết quả là 7

Đáp án: C

Câu 4: Cho khai báo sau: Var hoten : 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. Xâu có độ dài lớn nhất là 255

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

Hiển thị đáp án

Trả lời: Trong mô tả xâu có thể bỏ qua phần khai báo độ dài, khi đó độ dài lớn nhất của xâu sẽ nhận giá trị ngầm định là 255.

Đáp án: C

Câu 5: 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ào 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. Nối xâu S2 vào S1

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

Hiển thị đáp án

Trả lời: Thủ tục chuẩn Insert(S1,S2,vt) thực hiện chèn xâu S1 vào S2 bắt đầu từ vị trí vt. 

Đáp án: A

Câu 6: Đoạn chương trình sau in ra kết quả nào ?

Program Welcome ;

Var a : string[10];

Begin

a := ‘tinhoc ’;

writeln(length(a));

End.

A. 6;

B. 7;

C. 10;

D. Chương trình có lỗi;

Hiển thị đáp án

Trả lời: Hàm Length(s) là hàm cho biết độ dài của xâu s (số kí tự có trong xâu bao gồm cả dấu cách, dấu -, các dấu đặc biệt).

+ Xâu ‘tinhoc ’ có 7 kí tự nên kết quả chương trình là 7.

Đáp án: B

Câu 7: 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 xâu ra màn hình;

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

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

D. In từng kí tự ra màn hình theo thứ tự ngược; (*)

Hiển thị đáp án

Trả lời: Đoạn chương trình trên dùng để in từng kí tự ra màn hình theo thứ tự ngược, sử dụng vòng lặp chạy từ kí tự cuối về kí tự đầu. Mỗi lần chạy in ra một kí tự.

Câu 8: Trong ngôn ngữ lập trình Pascal, xâu kí tự không có kí tự nào gọi là ?

A. Xâu không;

B. Xâu rỗng;        

C. Xâu trắng;

D. Không phải là xâu kí tự;

Hiển thị đáp án

Trả lời: Trong ngôn ngữ lập trình Pascal, xâu kí tự không có kí tự nào gọi là xâu rỗng

Đáp án: B

Câu 9: Trong ngôn ngữ lập trình Pascal, khai báo nào trong các khai báo sau là sai khi khai báo xâu kí tự ?

A. Var S : string;

B. Var X1 : string[100];

C. Var S : string[256];   

D. Var X1 : string[1];

Hiển thị đáp án

Trả lời: Cấu trúc khai báo kiểu xâu

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

Trong đó: Biến xâu được đặt theo quy tắc đặt tên trong Pascal.

Độ dài xâu có thể có hoặc không, độ dài lớn nhất không quá 255 kí tự.

Đáp án: C

Câu 10: Trong ngôn ngữ lập trình Pascal, sau khi chương trình thực hiện xong đ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. Ha Noi Mua thu;

B. Mua thu Ha Noi mua thu;

C. Mua thu Ha Noi;                 

D. Ha Noi;

Hiển thị đáp án

Trả lời:

+ Câu lệnh Delete(S,7,8); có nghĩa là xóa 8 kí tự trong xâu S bắt đầu từ vị trí thứ 7→ xâu S còn lại sau khi thực hiện lệnh là ‘Ha Noi’

+ Câu lệnh Insert(‘Mua thu’, S, 1); có nghĩa là chèn xâu ‘Mua thu’ vào xâu S trên tại vị trí thứ nhất→ giá trị biến S sau khi thực hiện xong chương trình là ‘Mùa thu Ha Noi’.

Đáp án: C

Xem thêm các bài Câu hỏi trắc nghiệm Tin học 11 chọn lọc, có đáp án khác:

Giới thiệu kênh Youtube VietJack

  • Trong ngôn ngữ lập trình Pascal, để in một xâu ký tự ra màn hình theo thứ tự ngược lại
    Hỏi bài tập trên ứng dụng, thầy cô VietJack trả lời miễn phí!

Trong ngôn ngữ lập trình Pascal, để in một xâu ký tự ra màn hình theo thứ tự ngược lại

Trong ngôn ngữ lập trình Pascal, để in một xâu ký tự ra màn hình theo thứ tự ngược lại

Trong ngôn ngữ lập trình Pascal, để in một xâu ký tự ra màn hình theo thứ tự ngược lại

Trong ngôn ngữ lập trình Pascal, để in một xâu ký tự ra màn hình theo thứ tự ngược lại

Trong ngôn ngữ lập trình Pascal, để in một xâu ký tự ra màn hình theo thứ tự ngược lại

Trong ngôn ngữ lập trình Pascal, để in một xâu ký tự ra màn hình theo thứ tự ngược lại

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Trong ngôn ngữ lập trình Pascal, để in một xâu ký tự ra màn hình theo thứ tự ngược lại

Trong ngôn ngữ lập trình Pascal, để in một xâu ký tự ra màn hình theo thứ tự ngược lại

Nhóm học tập facebook miễn phí cho teen 2k5: fb.com/groups/hoctap2k5/

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.