Bài 12. Kiểu xâu

Chia sẻ bởi Lê Thị Lan | Ngày 10/05/2019 | 99

Chia sẻ tài liệu: Bài 12. Kiểu xâu thuộc Tin học 11

Nội dung tài liệu:

Bài 12 : KIỂU XÂU
Khai báo
Các thao tác xử lý xâu.
THPT Hoàng Hoa Thám
GV: Lê Thị Phương Lan
Hãy khai báo biến mảng A, B; trong đó A là mảng gồm 100 phần tử số nguyên, B là mảng gồm 100 phần tử mỗi phần tử là 1 ký tự: Gợi ý: kiểu ký tự ( Char)
Var A: Array[1..100] of Integer;
B: Array[1..100] of Char;

Dữ liệu trong các bài toán không chỉ thuộc kiểu số mà còn có cả kiểu phi số - dạng ký tự. Dữ liệu kiểu xâu là dãy các ký tự.
Chẳng hạn: các xâu ký tự đơn giản sau:
‘ 2008 la nam Mau Ty’; ‘ LOP HOC’;
* 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 một 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
Ta có thể xem xâu là mảng một chiều mà mỗi phần tử là một ký tự. Các phần tử của xâu được đánh số thứ tự, thường bắt đầu từ 1;
Để tham chiếu tới phần tử thứ i của mảng A ta viết thế nào?
- Tương tự để để tham chiếu tới phần tử thứ i của dãy S ta viết S[i]
VD: S:=‘Nguyen Thi Anh Tuyet’;
S[3]=‘u’;
S[5]=‘e’;
1. Khai báo
Var : String[ độ dài lớn nhất của xâu>;
VD : Var Hoten:string[30];
Trong mô tả xâu có thể bỏ qua phần khai báo độ dài. Chẳng hạn:
Var S: String;
Khi đó độ dài tối đa của xâu S ngầm định là 255

Hãy khai báo một biến xâu ký tự để mô tả tên của lớp học?
Var Lop:String[4];

2. Các thao tác xử lý xâu:
Phép ghép xâu, kí hiệu là dấu cộng (+) được sử dụng để ghép nhiều xâu thành một. Có thể thực hiện phép ghép xâu đối với các hằng và biến xâu.
VD: Phép ghép xâu:
‘Lop ‘ + ’11A4’
Cho kết quả là Lop 11A4
b) Các phép so sánh bằng (=), khác(<>), nhỏ hơn(<), lớn hơn(>), nhỏ hơn hoặc bằng(<=), lớn hơn hoặc bằng (>=) có thứ tự ưu tiên thực hiện thấp hơn phép ghép xâu và thực hiện việc so sánh hai xâu theo quy tắc sau:
Xâu A là lớn hơn xâu B nếu như ký tự đầu tiên khác nhau giữa chúng kể từ trái sang trong xâu A có mã ASCII lớn hơn.
VD: ‘hom nay’ > ‘hom Nay’
‘ Lop hoc’ > ‘ Lop 11A2’

Nếu A và B là các xâu có độ dài khác nhau và A là đoạn đầu của B thì A là nhỏ hơn B.
VD: ‘May tinh’ < ‘ May tinh cua toi’
Hai xâu được coi là bằng nhau nếu như chúng giống nhau hoàn toàn.
VD: ‘ TIN HOC’ =‘TIN HOC’
Để xử lý xâu ta dùng một số thủ tục và hàm chuẩn dưới đây
‘ Lop HOC’ > ‘LOP HOC’
c. Thủ tục delete(st, vt,n)thực hiện việc xóa n kí tự của biến xâu st bắt đầu từ vị trí vt
VD: S:=‘LOP HOC’;
Delete(S,2,4);
=> S=‘LOC’
Thủ tục Insert(s1,s2,vt) chèn xâu s1 vào xâu s2,bắt đầu ở vị trí vt
S1:=‘HA’; S2:=‘NOI’;
Insert(S1,S2,2);
S2=‘NHAOI’; s1=“HA’

e. Hàm copy(S,vt,N) tạo xâu mới gồm N kí tự liên tiếp bắt đầu từ vị trí vt của xâu S
S:=‘LOP 11A2’;
S1:= Copy(S,2,4);
S1=‘OP 1’; s=‘ LOP 11A2’
f. Hàm length(s) cho giá trị là độ dài xâu s
S:=‘HANOI’;
T:=length(s);
=> t=5
g. Hàm pos(s1,s2) cho vị trí xuất hiện đầu tiên của xâu s1 trong xâu s2.
S2:=‘abcdef’;
T:=pos(‘bc’,s2);
=> t=2;

h.Hàm upcase(ch) cho chữ cái in hoa ứng với chữ cái trong ch.
Ch:=upcase(‘a’);
=>ch = ‘A’;
Hãy viết chương trình nhập vào 1 xâu ký tự và đếm xem có bao nhiêu ký tự a trong xâu trên.’ ‘
Củng cố kiến thức
Kiểu xâu ký tự là gì?
Cách khai báo kiểu xâu
Các thao tác với xâu
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Lê Thị Lan
Dung lượng: | Lượt tài: 9
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)