Danh mục

Bài thực hành số 7: Kỹ thuật xử lý xâu ký tự (chuỗi)

Số trang: 8      Loại file: doc      Dung lượng: 94.00 KB      Lượt xem: 11      Lượt tải: 0    
Hoai.2512

Phí tải xuống: 1,000 VND Tải xuống file đầy đủ (8 trang) 0
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Kiểu xâu ký tự :typedef char Chuoi[KT];Khi đó, Chuoi trở thành một kiểu dữ liệu, là kiểu xâu ký tự, ta có thể khai báocác biến thuộc kiểu này.
Nội dung trích xuất từ tài liệu:
Bài thực hành số 7: Kỹ thuật xử lý xâu ký tự (chuỗi)Bài thực hành số 7: Kỹ thuật xử lý xâu ký tự (chuỗi) A. Mục tiêu  Nắm vững các khái niệm xâu ký tự  Nắm vững một số kỹ thuật xử lý cơ bản trên xâu ký tự  Rèn luyện cách gọi hàm, truyền tham số. B. Ôn tập:  Cú pháp định nghĩa biến xâu ký tự, kiểu xâu ký tự  Các thao tác cơ bản trên xâu ký tự  Các kỹ thuật xử lý xâu ký tự 1. Cú pháp khai báo (định nghĩa) biến mảng 1 chiều char Ten_Chuoi[KT]; hoặc: wchar Ten_Chuoi[KT]; 2. Kiểu xâu ký tự : typedef char Chuoi[KT]; Khi đó, Chuoi trở thành một kiểu dữ liệu, là kiểu xâu ký tự, ta có thể khai báocác biến thuộc kiểu này. Chuoi a, b; // a, b là các biến xâu ký tự, có không quá MAX ký tự 3. Các thao tác cơ bản: Với khai báo xâu ký tự như sau: char a[MAX]; //MAX là giá trị hằng đã định nghĩa trước a. Nhậpdữ liệu cho a: Sử dụng các cách sau: cin>>a; //Khi đó a không chứa ký tự tách (khoảng trắng, tab, ...) hoặc: gets(a); //a có thể chứa khoảng trắngLưu ý: • Đối với các cách trên, khi kết thúc việc nhập (nhấn Enter), trình biên dịch sẽ tự động thêm ký tự NULL vao cuối xâu. • Một xâu ký tự bao giờ cũng kết thúc bằng ký tự NULL. Nếu ta dùng cách nhập như mảng 1 chiều thông thường (liên kết 1 vòng for): for (int i = 0; i < n; i++) cin>>a[i]; Khi đó a chỉ là mảng 1 chiều có n ký tự khác NULL, chứ không phải là xâu ký tự. Để a trở thành một biến xâu ký tự chứa n ký tự khác NULL, ta c ần thêm NULL vào ký tự cuối cùng, tức là : a[n] = NULL; //’’ • Ký tự đầu tiên của xâu a bao giờ cũng tương ứng với chỉ số 0 (Không thay đổi): a[0] : Ký tự đầu tiên của a Nếu a là xâu rổng thì: a[0] == NULL • Nếu xâu ký tự a có chiều dài l (số lượng ký tự khác NULL trong a là l), thì: a[l] == NULL b. Xuất dữ liệu của a: coutint Cd(char a[MAX]);void Copy(char b[MAX], char a[MAX]);void ChenKT(char a[MAX], char Kt, int k);int DemKT(char a[MAX], char Kt);void HuyKT(char a[MAX], int k);void Thuong_Hoa(char a[MAX]);void main(){ int Chon; char a[MAX]; cout case 2: _flushall(); coutint Cd(char a[MAX]){ int i = 0; while (a[i] != NULL) i++; return i;}void Copy(char b[MAX], char a[MAX]){ int i; for(i = 0; a[i] != NULL; i++) b[i] = a[i]; b[i] = NULL;}void ChenKT(char a[MAX], char Kt, int k){ int i, l; l = Cd(a); if ( k > l || k < 0) { cout l || k < 0) { cout{ int i; for(i = 0; a[i] != NULL; i++) if ( a do { if (!Nhap(a)) cout return S;} D. Luyện tập:Bài 1: Viết chương trình thực hiện các thao tác trên xâu ký tự. Yêu cầu của chươngtrình là: - In ra màn hình menu có các chức năng sau :1. Hủy ký tự cho trước ra khỏi xâu ký tự2. Nối xâu b vào sau xâu a.3. Đảo ngược một xâu ký tự.4. Kiểm tra một xâu ký tự có phải là đối xứng5. Cắt ký tự đầu của xâu rồi ghép vào cuối xâu đó.6. So sánh 2 xâu ký tự theo thứ tự từ điển.7. Thóat. - Muốn thực hiện thao tác nào thì chọn chức năng tương ứng của menu.Bài 2: Ta xem tên là một xâu ký tự bao gồm nhiều từ tách biệt bằng các ký tự trắng.Từ là một dãy liên tiếp các ký tự khác ký tự trắng. Viết chương trình nắn các tên nhậptừ bàn phím theo qui cách: • Khử các ký tự trắng ở đầu và cuối của tên. • Khử bớt các dấu cách ở giữa các từ, chỉ để lại một ký tự trắng. • Các chữ cái đầu từ được viết hoa, ngoài ra mọi chữ cái còn lại được viết thường.

Tài liệu được xem nhiều:

Gợi ý tài liệu liên quan: