Ktl-icon-tai-lieu

Lập trình căn bản

Được đăng lên bởi mimompo4443
Số trang: 7 trang   |   Lượt xem: 258 lần   |   Lượt tải: 0 lần
Lập trình căn bản

Chương VIII:

CHUỖI KÝ TỰ

Học xong chương này, sinh viên sẽ nắm được các vấn đề sau:
ƒ Khái niệm về chuỗi ký tự.
ƒ Một số hàm xử lý chuỗi và ứng dụng của chúng trong thực tế.

I. KHÁI NIỆM
Chuỗi ký tự là một dãy gồm các ký tự hoặc một mảng các ký tự được kết thúc
bằng ký tự ‘\0’ (còn được gọi là ký tự NULL trong bảng mã Ascii).
Các hằng chuỗi ký tự được đặt trong cặp dấu nháy kép “”.

II. KHAI BÁO
II.1 Khai báo theo mảng
Cú pháp:

char <Biến> [Chiều dài tối đa]

Ví dụ: Trong chương trình, ta có khai báo:
char Ten[12];
Trong khai báo này, bộ nhớ sẽ cung cấp 12+1 bytes để lưu trữ nội dung
của chuỗi ký tự Ten; byte cuối cùng lưu trữ ký tự ‘\0’ để chấm dứt chuỗi.
Ghi chú:

- Chiều dài tối đa của biến chuỗi là một hằng nguyên nằm trong khoảng từ 1
đến 255 bytes.
- Chiều dài tối đa không nên khai báo thừa để tránh lãng phí bộ nhớ, nhưng
cũng không nên khai báo thiếu.

II.2 Khai báo theo con trỏ
Cú pháp:

char *<Biến>

Ví dụ: Trong chương trình, ta có khai báo:
char *Ten;
Trong khai báo này, bộ nhớ sẽ dành 2 byte để lưu trữ địa chỉ của biến
con trỏ Ten đang chỉ đến, chưa cung cấp nơi để lưu trữ dữ liệu. Muốn có chỗ để lưu
trữ dữ liệu, ta phải gọi đến hàm malloc() hoặc calloc() có trong “alloc.h”, sau đó mới
gán dữ liệu cho biến.

II.3 Vừa khai báo vừa gán giá trị
Cú pháp:

char <Biến>[]=<”Hằng chuỗi”>

Ví dụ:
#include<stdio.h>
#include<conio.h>
int main()
{
char Chuoi[]="Mau nang hay la mau mat em” ;

Trang 92

Lập trình căn bản
printf("Vua khai bao vua gan trị : %s”,Chuoi) ;
getch();
return 0;
}

* Ghi chú: Chuỗi được khai báo là một mảng các ký tự nên các thao tác trên
mảng có thể áp dụng đối với chuỗi ký tự.

III. CÁC THAO TÁC TRÊN CHUỖI KÝ TỰ
III.1. Nhập xuất chuỗi
III.1.1 Nhập chuỗi từ bàn phím
Để nhập một chuỗi ký tự từ bàn phím, ta sử dụng hàm gets()
Cú pháp:

gets(<Biến chuỗi>)

Ví dụ:

char Ten[20];
gets(Ten);
Ta cũng có thể sử dụng hàm scanf() để nhập dữ liệu cho biến chuỗi, tuy nhiên
lúc này ta chỉ có thể nhập được một chuỗi không có dấu khoảng trắng.
Ngoài ra, hàm cgets() (trong conio.h) cũng được sử dụng để nhập chuỗi.
III.1.2 Xuất chuỗi lên màn hình
Để xuất một chuỗi (biểu thức chuỗi) lên màn hình, ta sử dụng hàm puts().
Cú pháp:

puts(<Biểu thức chuỗi>)

Ví dụ: Nhập vào một chuỗi và hiển thị trên màn hình chuỗi vừa nhập.
#include<conio.h>
#include<stdio.h>
#include<string.h>
int main()
{
char Ten[12];
printf("Nhap chuoi: ");gets(Ten);
printf("Chuoi vua nhap: ");puts(Ten);
getch();
return 0;
}

Ngoài ra, ta có thể sử dụng hàm pr...
Lp trình căn bn
Chương VIII: CHUI KÝ T
Hc xong chương này, sinh viên s nm được các vn đề sau:
Khái nim v chui ký t.
Mt s hàm x lý chui và ng dng ca chúng trong thc tế.
I. KHÁI NIM
Chui ký t là mt dãy gm các ký t hoc mt mng các ký t được kết thúc
bng ký t ‘\0’ (còn được gi là ký t NULL trong bng mã Ascii).
Các hng chui ký t được đặt trong cp du nháy kép “”.
II. KHAI BÁO
II.1 Khai báo theo mng
Cú pháp: char <Biến> [Chiu dài ti đa]
d: Trong chương trình, ta có khai báo:
char Ten[12];
Trong khai báo này, b nh s cung cp 12+1 bytes để lưu tr ni dung
ca chui ký t Ten; byte cui cùng lưu tr ký t ‘\0’ để chm dt chui.
Ghi chú:
- Chiu dài ti đa ca biến chui là mt hng nguyên nm trong khong t 1
đến 255 bytes.
- Chiu dài ti đa không nên khai báo tha để tránh lãng phí b nh, nhưng
cũng không nên khai báo thiếu.
II.2 Khai báo theo con tr
Cú pháp: char *<Biến>
Ví d: Trong chương trình, ta có khai báo:
char *Ten;
Trong khai báo này, b nh s dành 2 byte để lưu tr địa ch ca biến
con tr Ten đang ch đến, chưa cung cp nơi để lưu tr d liu. Mun có ch để lưu
tr d liu, ta phi gi đến hàm malloc() hoc calloc() có trong “alloc.h”, sau đó mi
gán d liu cho biến.
II.3 Va khai báo va gán giá tr
Cú pháp: char <Biến>[]=<”Hng chui”>
Ví d:
#include<stdio.h>
#include<conio.h>
int main()
{
char Chuoi[]="Mau nang hay la mau mat em” ;
Trang 92
Lập trình căn bản - Trang 2
Để xem tài liệu đầy đủ. Xin vui lòng
Lập trình căn bản - Người đăng: mimompo4443
5 Tài liệu rất hay! Được đăng lên bởi - 1 giờ trước Đúng là cái mình đang tìm. Rất hay và bổ ích. Cảm ơn bạn!
7 Vietnamese
Lập trình căn bản 9 10 804