KIỂM TRA BÀI CŨ
Viết chương trình nhập vào từ bàn phím họ và tên của em. In ra màn hình họ và tên vừa nhập.
KIỂU XÂU (TIẾT 1)
Bài 12:
1. Khái niệm về xâu
Xâu là dãy các kí tự trong bộ mã ASCII.
Mỗi kí tự được gọi là một phần tử của xâu, số lượng kí tự trong 1 xâu được gọi là độ dài xâu.
Xâu có độ dài bằng 0 gọi là xâu rỗng.
Cho xâu A:=’’; xâu A có độ dài bằng bao nhiêu?
1. Khái niệm về xâu
Chú ý: Có thể xem xâu như là mảng một chiều, mỗi phần tử là một kí tự. Các kí tự của xâu được đánh số thứ tự, thường bắt đầu bằng 1.
A
- Tham chiếu đến từng phần tử của xâu:
[chỉ số]
- Ví dụ: A[6] = ‘A’, A[5] = ‘ ‘, A[2] = ‘g’.
2. Khai báo
Cú pháp:
var : string[độ dài lớn nhất của xâu];
Trong đó:
tên biến xâu: bao gồm chữ số, kí tự, dấu gạch dưới, không được bắt đầu bằng chữ số, không chứa các kí tự đặc biệt.
string: tên dành riêng để khai báo dữ liệu kiểu xâu.
độ dài lớn nhất của xâu: không vượt quá 255 kí tự.
Ví dụ:
Hãy chỉ ra những khai báo đúng trong những khai báo sau:
A, var st: string[20];
B, var hoten: string[300];
C, var 11A1: string[25];
D, var diachi: string;
2. Khai báo
Lưu ý: Trong mô tả xâu có thể bỏ qua 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.
3. Các thao tác xử lí xâu
a. Phép ghép xâu.
Ví dụ 1: Phép ghép xâu:
A:=’Vinh’+’-‘+’Nghe An’;
Cho ra kết quả là gì ?

A:=‘Vinh-Nghe An’;
Ví dụ 2: Cho 2 xâu s1:=’123 ’;
s2:=’Nghe An’;
Thực hiện s1+s2 cho ra kết quả gì?

S:=‘123 Nghe An’;
3. Các thao tác xử lí xâu
b. Phép so sánh xâu.
‘NGHE AN’ ’NGHE AN’
Quy tắc:
+ Xâu A = B: chúng hoàn toàn giống nhau.
+ Xâu A > B:
• Kí tự đầu tiên khác nhau giữa A và B kể từ trái sang trong xâu A có mã ASCII lớn hơn trong xâu B.

• Xâu B là đoạn đầu của xâu A.
‘NGHE an’   ‘NGHE An’
‘nghe tinh’ ’nghe an’
 ‘nghe an’ ’nghe’
=
>
>
>
3. Các thao tác xử lí xâu
c. Thủ tục
* Thủ tục delete
Ví dụ: Cho A:=’Nghe An’; Thực hiện thao tác sau cho ra kết quả gì?
Delete(A, 5, 3)
Delete(A, 3, 2)
Delete(A, 1, 4)
 
A
= ‘Nghe’;
= ‘Ng An’;
= ‘An’;
3. Các thao tác xử lí xâu
c. Thủ tục
* Thủ tục insert
Ví dụ: Cho A:=’ Vinh’; B:=’1234’;
Thực hiện thao tác sau cho ra kết quả gì?
a. Insert(A, B, 3)
b. Insert(A, B, 1)
c. Insert(A, B, 4)

 
A
B
= ‘12Vinh34’;
= ‘Vinh1234’;
= ‘123Vinh4’;
Bài tập trắc nghiệm:
1. Cách khai báo biến xâu nào dưới đây là sai:
A. var A: string;
B. var A: string[50];
C. var A=string[20];
D. var A: string[100];
Bài tập trắc nghiệm:
2. So sánh 2 xâu: s1:=’BCAD’ và s2:=’BCaD’:
A. s1 > s2
B. s1 = s2
C. s1 < s2
D. s1 <> s2
Bài tập trắc nghiệm:
3. Xâu A:=’Vinh – Nghe An’ ; là kết quả của phép ghép xâu nào ?
A. ‘Vinh’+’Nghe An’
B. ‘Vinh’+’-‘+’Nghe An’
C. ‘Vinh’+’ – ‘+’Nghe An’
D. ‘Vinh -’+Nghe An’
Bài tập trắc nghiệm:
4. Cho 2 xâu: A:=’Kinh chao’; B:=’quy khach’;
Thực hiện lệnh delete(A,5,5) cho kết quả là:
A. ‘Kinh ‘
B. ‘Kinh’
C. ‘quy ‘
D. ‘quy k’
Bài tập trắc nghiệm:
5. Cho 2 xâu: A:=’Kinh chao’; B:=’quy khach’;
Thực hiện lệnh insert(A,B,1) cho kết quả là:
A. ‘Kinh chao quy khach’
B. ‘Kinh chaoquy khach’
C. ‘quy khach Kinh chao’
D. ‘quy khachKinh chao’
Thanks for watching
nguon VI OLET