Tải bản đầy đủ (.ppt) (20 trang)

Kieu Xau

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (190.89 KB, 20 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>

Kiểu xâu 1


Một chương trình



cho phép nhập vào một dãy kí tự



Có thể sử dụng
kiểu dữ liệu nào
trong các kiểu đã


học để lưu trữ
dãy các kí tự


</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

Kiểu xâu 2


KIỂU XÂU



</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

Kiểu xâu 3


GIỚI THIỆU đơi nétVỀ XÂU



• XÂU: là một dãy 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 xâu. Xâu có độ dài bằng 0 gọi là


xâu rỗng


• 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 kí tự của


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

Kiểu xâu 4


255


0

<i><b>max</b></i>



Khai báo



(Ngơn ngữ lập trình Pascal)



• Trong đó <i>max</i> là hằng ngun dương
• Ví dụ: var Hoten:string[26];


• Khi <i>max</i>=255 ta có thể khai báo


Var <tên biến>:string;


Ví dụ:


</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

Kiểu xâu 5


Cách tham chiếu đến các phần tử


của xâu



<tên biến xâu>

[

vị trí của kí tự

]



Ví dụ:




Ten=‘My An’



Ten

[

5

]

=?



Vị trí 1 2 3 4 5


Ten

<sub>M y</sub>

<sub>A</sub>

<sub>n</sub>



</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

Kiểu xâu 6


</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

Kiểu xâu 7


Các thao tác xử lí xâu



(Ngơn ngữ lập trình Pascal)



• Phép ghép xâu


• Các phép so sánh


• Thủ tục delete(st,vt,n)
• Thủ tục insert(s1,s2,n)
• Hàm copy(S,vt,vt)


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

Kiểu xâu 8


• Kí hiệu: +


• Ý nghĩa: dùng để ghép hai hay nhiều xâu
lại với nhau



• Ví dụ: ‘Chuc mung’+’ nam moi!’ sẽ cho ra


xâu mới là ‘Chuc mung nam moi!’


Phép ghép xâu


<b> Chương trình mẫu</b>


</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

Kiểu xâu 9


Chương trình mẫu phép ghép xâu



<b> Chạy chương trình</b>


</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>

Kiểu xâu 10
• Xâu <b>A lớn hơn xâu B</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ó <b>mã ASCII</b> lớn hơn


• 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ì <b>A nhỏ hơn B</b>


• Hai xâu <b>bằng nhau</b> nếu chúng giống nhau hoàn toàn


Các phép so sánh


<i>Giữa hai xâu có thể có một trong các phép toán so sánh sau: </i>



= (bằng), <> (khác),<= (bé hơn hoặc bằng),


>= (lớn hơn hoặc bằng),< (bé hơn), > (lớn hơn)
Qui tắc so sánh hai xâu


</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>

Kiểu xâu 11


So sánh các xâu



A=‘Tomorrow’ B=‘tomorrow’


C=‘Tomorrow will come’


D=‘Tomorrow’ E=‘Today’


Hãy so sánh xâu
A với các xâu B,


C, D, E?


A < B


A < C


A = D


</div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12>

12


• Ý nghĩa:xóa n kí tự của biến xâu s bắt đầu



từ vị trí vt
• Ví dụ


Thủ tục <b>delete(</b>s,vt,n<b>)</b>||Thủ tục insert(s1,s2,vt)
Thủ tục <b>delete(</b>s,vt,n<b>)</b>


</div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>

Kiểu xâu 13


• Ý nghĩa: chèn xâu s1 vào xâu s2 bắt đầu ở vị trí vt


• Ví dụ:


Thủ tục delete(s,vt,n)||Thủ tục <b>insert(</b>s1,s2,vt<b>)</b>
Thủ tục <b>insert(</b>s1,s2,vt<b>)</b>


S1 s2 Thao tác S1 sau thủ tục


</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14>

Kiểu xâu 14


</div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15>

Kiểu xâu 15
Một số hàm


Hàm copy(s,vt,n)


Hàm pos(s1,s2)
Hàm length(s)


</div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16>

Kiểu xâu 16


• Ý nghĩa:tạo xâu gồm <b>n</b> kí tự liên tiếp bắt đầu từ


vị trí <b>vt</b> của xâu <b>s</b>


• Ví dụ:


Hàm <b>copy(s,vt,n) </b>|| Hàm <b>length(s)</b> || Hàm <b>pos(s1,s2)</b> || Hàm <b>upcase(ch)</b>


Hàm copy(s,vt,n)


Giá trị s Biểu thức Giá trị của biểu thức
‘Thu 7 ngay 15’ Copy(s,1,5) ‘Thu 7’


‘Today is Saturday’ Copy(s,10,8) ‘Saturday’


</div>
<span class='text_page_counter'>(17)</span><div class='page_container' data-page=17>

Kiểu xâu 17


• Ý nghĩa:cho giá trị là độ dài của xâu <b>s</b>


• Ví dụ:


Hàm <b>copy(s,vt,n)</b> || Hàm <b>length(s)</b> || Hàm <b>pos(s1,s2)</b> || Hàm <b>upcase(ch)</b>


Hàm <b>length(s)</b>


Giá trị s Giá trị của Length(s)


‘Today’ 5


‘0123456789’ 10


</div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18>

Kiểu xâu 18



• Ý nghĩa:cho vị trí xuất hiện đầu tiên của


xâu s1 trong s2


• Ví dụ:


Hàm <b>copy(s,vt,n)</b> || Hàm <b>length(s)</b> || Hàm <b>pos(s1,s2)</b> || Hàm <b>upcase(ch)</b>


Hàm <b>pos (s1,s2)</b>


Giá trị s1 Giá trị s2 Giá trị của hàm
pos(s1,s2)


‘ab’ ‘00abcdef’ 3


‘ko’ ‘abkabcd’ 0


</div>
<span class='text_page_counter'>(19)</span><div class='page_container' data-page=19>

Kiểu xâu 19


• Ý nghĩa:cho chữ cái in hoa ứng với <b>ch</b>
• Ví dụ:


Hàm <b>copy(s,vt,n)</b> || Hàm <b>length(s)</b> || Hàm <b>pos(s1,s2)</b> || Hàm <b>upcase(ch)</b>


Hàm <b>upcase(ch)</b>


</div>
<span class='text_page_counter'>(20)</span><div class='page_container' data-page=20></div>

<!--links-->

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×