
Bài 12 : KIỂU XÂU
I. MỤC ĐÍCH, YÊU CẦU :
Biết xâu là một dãy ký tự (có thể coi xâu là một mảng một chiều) .
Biết cách khai báo xâu, truy cập phần tử của xâu .
Sử dụng được một số thủ tục, hà thông dụng về xâu .
Cài đặt được một số chương trình đơn giản có sử dụng xâu .
II. PHƯƠNG PHÁP, PHƯƠNG TIỆN :
Phương pháp : Thuyết trình, vấn đáp .
Phương tiện : Máy chiếu, máy tính, phông chiếu hoặc bảng .
III. LƯU Ý SƯ PHẠM :
Thuận tiện của bài này là các em đã được học khái niệm về mảng, có thể sử
dụng điều này để dạy về xâu, nhưng cần chú ý cho các em một số khác biệt so với
mảng một chiều : độ dài xâu, một số phép toán trên xâu và một số hàm và thủ tục
xử lý xâu .
IV. NỘI DUNG :
HOẠT ĐỘNG CỦA GIÁO VIÊN VÀ HỌC
NỘI DUNG

SINH
Ổn định lớp :
- Chào thầy cô .
- Cán bộ lớp báo cáo sĩ số .
- Chỉnh đốn trang phục .
GV : Để lưu trữ và xử lý Họ tên của một người,
các kiểu dữ liệu đã học có đáp ứng được ?
HS : Đưa ra một số phương án .
GV : Phân tích các phương án của học sinh, từ
đó đưa ra yêu cầu cần sử dụng một kiểu mới :
Kiểu xâu .
Một số khái niệm
- Xâu là một dãy kí tự trong bảng
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 xâu được
gọi là độ dài của xâu .
- Xâu có độ dài bằng 0 gọi là xâu
rỗng.
- Tham chiếu tới phần tử trong
xâu được xác định thông qua chỉ
số của phần tử trong xâu .
- Chỉ số phần tử trong xâu thường
được đánh số là 1 .

GV : Giới thiệu một số khái niệm và thao tác
thường dùng khi làm việc với xâu ký tự trong
lập trình nói chung .
GV : Đây là cách khai báo trong ngôn ngữ
Pascal, trong các ngôn ngữ khác nhau có thể có
cách khai báo khác nhau . Do đó khi viết
chương trình bằng ngôn ngữ nào cần tìm hiểu
rõ các đối tượng của ngôn ngữ đó .
-
Trong ngôn ngữ Pacal, tham
chiếu tới phần tử thường được
viết :
<Tên biến xâu>[chỉ số]
Cách khai báo và xử lí xâu trong
ngôn ngữ Pascal :
1 Khai báo biến xâu :
Pascal sử dụng từ khóa STRING
để khai báo xâu . Độ dài tối đa của
xâu được viết trong [ ] sau từ khóa
STRING . Khai báo như sau :
Var <tên biến> : String[độ dài lớn
nhất của xâu] ;
Ví dụ :
Var Ten : String[10] ;
Ho_dem : String[50] ;

Độ dài tối đa của xâu phụ thuộc vào ngôn ngữ
lập trình, thường là 255 ký tự .
Cách viết hằng xâu trong các ngôn ngữ khác
nhau cũng có sự khác nhau .
Xét ví dụ như sau : Có xâu kí tự :
‘ nGuyen vaN A ’
Hỏi cần có các thao tác gì để chỉnh sửa xâu kí
tự này ? (cần đưa xâu về dạng ‘Nguyen Van A’)
HS : Đưa ra ý kiến của mình .
Que : String ;
Chú ý :
- Nếu không khai báo độ dài tối
đa cho biến xâu kí tự thì độ dài
ngầm định của xâu là 255 .
- Độ dài lớn nhất của xâu là 255
ký tự .
- Hằng xâu kí tự được đặt trong
cặp nháy đơn ‘ ’ .
2 Các thao tác xử lí xâu
- Với các xâu kí tự có các phép
phép xâu và phép so sánh hai
xâu kí tự .
- Phép ghép xâu : Kí hiệu bằng
dấu cộng + .
Ví dụ : ‘Ha’ + ‘Noi’ cho kết quả là
‘Ha Noi’

GV :
Phân tích ý kiến và gợi ý để các em nhận
ra cần :
- Xóa bớt một số dấu cách .
- Chuyển chữ hoa về chữ thường và ngược
lại .
GV : Đưa ra một số câu hỏi :
- Làm sao biết một ký tự là dấu cách ?
- Làm sao để xóa đi một vài kí tự ?
- Làm sao để thêm vào một xâu một vài kí
tự ?
- Làm sao để có được chữ in hoa tương
ứng với chữ thường.
- Làm sao có được chữ cái thường tương
ứng với chữ hoa ?
Phép so sánh : <, <=, >, >=, = , <>,
Pascal tự động so sánh lần lượt từ kí
tự từ trái sang phải .
Ví dụ : ‘AB’ < ‘AC’, ‘ABC’ >
‘ABB’, ‘ABC’ <’ABCD’
Một số thủ tục chuẩn dùng để xử
lí xâu :
- Delete(St,vt,n) xóa n kí tự
của xâu St bắt đầu từ vị trí vt
.
- Insert(S1,S1,vt) chèn sâu S1
vào S2 bắt đầu từ vị trí vt của
S2
- Val(St,x,m) Đổi giá trị xâu St
thành số ghi giá trị vào biến
X, nếu không đổi được thì vị

