Tìm kiếm theo tiêu đề

Tin tức cộng đồng

[MỜI HỢP TÁC] Các kỳ thi Olympic Quốc tế 2026 (IMO - IEO - ISO)

Kính gửi Quý Lãnh đạo, Ban Giám hiệu và Quý Thầy/Cô, FermatTech (Đối tác Google tại VN) phối hợp cùng SCO Ấn Độ trân trọng kính mời tham gia 3 kỳ thi uy tín dành cho HS từ lớp 1 - 12: - IMO: Olympic Toán Quốc tế. - IEO: Olympic Tiếng Anh Quốc tế. - ISO: Olympic Khoa học...
Xem tiếp

Tin tức thư viện

Chức năng Dừng xem quảng cáo trên violet.vn

12087057 Kính chào các thầy, cô! Hiện tại, kinh phí duy trì hệ thống dựa chủ yếu vào việc đặt quảng cáo trên hệ thống. Tuy nhiên, đôi khi có gây một số trở ngại đối với thầy, cô khi truy cập. Vì vậy, để thuận tiện trong việc sử dụng thư viện hệ thống đã cung cấp chức năng...
Xem tiếp

Hỗ trợ kĩ thuật

  • (024) 62 930 536
  • 0919 124 899
  • hotro@violet.vn

Liên hệ quảng cáo

  • (024) 66 745 632
  • 096 181 2005
  • contact@bachkim.vn

Bài 12. Kiểu xâu

Wait
  • Begin_button
  • Prev_button
  • Play_button
  • Stop_button
  • Next_button
  • End_button
  • 0 / 0
  • Loading_status
Tham khảo cùng nội dung: Bài giảng, Giáo án, E-learning, Bài mẫu, Sách giáo khoa, ...
Nhấn vào đây để tải về
Báo tài liệu có sai sót
Nhắn tin cho tác giả
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Nguyễn Ngọc Hợi (trang riêng)
Ngày gửi: 18h:08' 15-08-2009
Dung lượng: 685.3 KB
Số lượt tải: 261
Số lượt thích: 0 người
SỞ GD – ĐT QUẢNG TRỊ
TRƯỜNG THTP TRIỆU PHONG
Giới thiệu kiếu dữ liệu xâu
Mảng số:
Mảng kí tự:
Giới thiệu kiểu dữ liệu xâu
H Ữ U T H Â N
Kiểu DL mới:
Các kiểu dữ liệu chuẩn
- Kiểu nguyên
- Kiểu thực
- Kiểu lôgic
- Kiểu kí tự
Dữ liệu có cấu trúc
Làm thế nào để khai báo biến lưu trữ họ và tên của một học sinh? ( Ví dụ: HỮU THÂN)
Var A: array[1..7] of char
Quá trình nhập xuất dữ liệu phải truy xuất đến từng phần tử của mảng để nhập xuất từng kí tự.
Nhập xuất dữ liệu trên một biến
2. Định nghĩa
Ví dụ:
Các xâu kí tự đơn giản:
‘SINH VIEN’ ; ‘a46‘LOP 11B1 CO 22 HOC SINH’
Ví dụ: Lưu trử một xâu ‘SINH_VIEN’ như sau:
‘ S I N H _ V I E N ’
‘1 2 3 4 5 6 7 8 9
9
9
S
I
N
H
_
V
I
E
N
Biểu diễn xâu trong bộ nhớ:
Với một xâu có n kí tự, bộ nhớ dành ra n+1 byte để lưu trữ xâu đó. Trong đó byte đầu tiên chứa tổng số ký tự có trong xâu , các byte tiếp theo chứa các ký tự của xâu.
Xâu là dãy các kí tự trong bộ mã ASCII.
Trong đó:
Mỗi kí tự được gọi là một phần tử của xâu;
Xâu A có kí tự nên có phần tử
Phần tử thứ
Có giá trị là:
Độ dài xâu là số lượng kí tự có trong xâu;

Tham chiếu đến phần tử của xâu theo quy tắc: Ten_bien_xau[chi_so]
Định nghĩa
7
?
?
7
1
T
2
I
N
3
4
5
H
6
O
7
C
7
1
T
2
I
N
3
4
5
H
6
O
7
C
- Lưu ý:
Độ dài lớn nhất của xâu là 255;
Độ dài bé nhất của xâu là 0; (gọi là xâu rỗng).
Chỉ số của biến xâu được đánh số bắt đầu từ 0, phần tử đầu tiên chứa giá trị là độ dài của biến xâu.



Hằng xâu luôn được đặt trong hai dấu nháy đơn
Vd: A=‘SINH VIEN’
B=‘1234’ C=‘ ’ D=‘’


9
Những vấn đề cần quan tâm đối với kiểu xâu
+ Khai báo biến xâu.
+ Nhập, xuất dữ liệu cho biến xâu.
+ Tham chiếu đến các phần tử của xâu.
`
3. Khai báo
- Gián tiếp
TYPE = STRING[N];
VAR : ;
VAR : STRING[N];
- Trực tiếp
Lư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;
Ví dụ:
- TYPE Ho_ten=STRING[30];
VAR A: Ho_ten;
- VAR Que_quan:STRING[100];
Ví dụ:
VAR Ghi_chu: STRING;
Bài 1: Viết chương trình nhập và xuất một biến xâu?
Type Hoten=String[30];
Var A:Hoten;
Begin
      Write(‘Nhap ho ten: ‘);
Readln(A);
      Write(‘Ho ten la: ‘,A);
      Readln;
End.
Nhap ho ten: _
Ho ten la:
Phan Thi Hoa
Phan Thi Hoa
Bài 2: Viết chương trình truy xuất đến phần tử thứ 2, 4,6 của một xâu có độ dài là 5?
{
}
HUONG
Var S:string [5];
Begin
      Write(‘Nhap xau S: ‘); Readln(S);
      Writeln(‘PT thu 2: ‘, S[2]);
 Writeln(‘PT thu 4: ‘, S[4]);  
      Writeln(‘PT thu 6: ‘, S[6]);
Readln;
End.

Nhap xau S:_

PT thu 2: U
PT thu 4: N



Error 76: Constant out of range
3. Các phép toán trên xâu kí tự
a. Phép ghép
Kí hiệu là dấu cộng (+);
Ý nghĩa: ghép nhiều xâu thành một;
Có thể thực hiện phép ghép đối với các hằng và các biến xâu.
Ví dụ:
‘Kieu’ + ‘Xau’ = ‘KieuXau’
Minh hoạ:
4
3
K
i
e
u
X
a
u
7
K
i
e
u
X
a
u
7
+
b. Phép so sánh (=, <>, <, >, <=, >=)
Hai xâu giống nhau hoàn toàn thì bằng nhau.
So sánh hai xâu, nếu như kí tự đầu tiên khác nhau kể từ trái sang của xâu nào có mã ASCII lớn hơn thì lớn hơn.
Nếu A là đọan đầu của B thì A Ví dụ1 :
‘tinhoc’ ? ‘tinhoc’
Minh hoạ:
6
t
i
n
h
o
c
6
t
i
n
h
o
c
=
=> ‘tinhoc’ = ‘tinhoc’
Ví dụ 2:
‘TRE EM’ ? ‘TRE CON’
T
T
=
R
R
=
=
E
E
=
=
E
C
69
67
>
=> ‘TRE EM’ > ‘TRE CON’
Ví dụ 3:
‘HOA’ ? ‘HOA HONG’
H
H
=
O
O
=
A
A
=
=> ‘HOA’ < ‘HOA HONG’
#
`
4. Các hàm và thủ tục chuẩn:
Thủ tục DELETE
Cú pháp: DELETE(St, vt, n)
Ý nghĩa: Xoá n ký tự từ xâu St bắt đầu từ vị trí vt.
Ví dụ: St = ‘tinhocnhatruong’
Delete(St,7,9)
=> St = ‘tinhoc’
Minh hoạ:
Lưu ý:
Nếu vt bắt đầu từ 0 hoặc nằm ngoài độ dài của xâu thì câu lệnh trên khi thực hiện không xoá ký tự nào cả.
Nếu n > độ dài của xâu và vt= 1 thì sẽ xóa hết kí tự trong xâu.
9
15
-
=
6
15
6
7
4. Các hàm và thủ tục chuẩn:
b) Thủ tục INSERT
Cú pháp: INSERT(St1, St2, vt)
Ý nghĩa: Chèn xâu St1 vào xâu St2 bắt đầu từ vị trí vt.
Ví dụ:
St1 = ‘PC-’ St2 = ‘IBM-486’
Insert(St1, St2, 5)
=> St2 = ‘IBM-PC-486’
Minh hoạ:
Lưu ý:
Nếu vt <=1 thì xâu st1 được chèn vào trước xâu st2.
Nếu vt >=length(st2) thì xâu st1 được chèn vào cuối xâu st2.
3
7
+
=
10
10
7
P
C
-
P
C
-
5
4. Các hàm và thủ tục chuẩn:
c) Hàm COPY
Cú pháp: COPY(St, vt, n):
Ý nghĩa: Tạo một xâu gồm n ký tự liên tiếp được lấy trong xâu St bắt đầu từ vị trí vt.
Ví dụ: St = ‘tinhocnhatruong’
S:=Copy(St, 7, 9)
=> S = ‘nhatruong’
Minh hoạ:
15
n
h
a
t
r
u
o
n
g
9
9
n
h
a
t
r
u
o
n
g
Lưu ý:
Nếu vt >=length(St) thì xâu tạo thành là xâu rỗng.
4. Các hàm và thủ tục chuẩn:
d) Hàm POS
Cú pháp: POS(St1, St2)
Ý nghĩa: Cho vị trí xuất hiện đầu tiên của xâu St1 trong xâu St2.
Ví dụ: St1 = ‘u’ St2 = ‘kieudulieuxau’
N := Pos(St1, St2)
=> N = 4
Minh hoạ:
N
=
0
2
4
1
3
4
u
u
u
u
u
k
<>
=
i
e
u
Lưu ý:
Nếu xâu St1 không có trong xâu St2 thì cho kết quả là 0.
4. Các hàm và thủ tục chuẩn
e) Hàm LENGTH
Cú pháp: LENGTH(St)
Ý nghĩa: Cho giá trị là độ dài của xâu St.
Ví dụ:
N := Length(‘cac thao tac xu ly xau’)
=> N = 22
f) Hàm UPCASE
Cú pháp: UPCASE(Ch):
Ý nghĩa: Cho giá trị là ký tự in hoa ứng với ký tự Ch.
Chú ý: Ch ở trên là kiểu ký tự (Char).
Ví dụ: Ch := Upcase(‘a’) Ch := Upcase(‘E’) => Ch = ‘A’ => Ch = ‘E’
Lưu ý:
Hàm Upcase chỉ có tác dụng đối với một kí tự, không có tác dụng đối với một xâu.
I. Định nghĩa: Xâu là dãy các kí tự trong bộ mã ASCII.
II. Khai báo biến xâu:
III. Các thao tác xử lý xâu:
1. Phép ghép xâu:
2. Phép toán so sánh: <, <=, =, >=, >, <>
3. Các hàm, thủ tục chuẩn:

Tóm tắt-ghi nhớ
Từ khóa;
Tên biến;
Độ dài lớn nhất của xâu.
 
Gửi ý kiến

↓ CHÚ Ý: Bài giảng này được nén lại dưới dạng RAR và có thể chứa nhiều file. Hệ thống chỉ hiển thị 1 file trong số đó, đề nghị các thầy cô KIỂM TRA KỸ TRƯỚC KHI NHẬN XÉT  ↓