intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Phương pháp lập trình - Chương 7: Chuỗi ký tự (2016)

Chia sẻ: Bình Yên | Ngày: | Loại File: PPT | Số trang:34

53
lượt xem
4
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Phương pháp lập trình - Chương 7: Chuỗi ký tự" cung cấp cho người học các kiến thức: Kí tự, giới thiệu chuỗi, khai báo và khởi tạo chuỗi, nhập, xuất chuỗi, một số hàm thao tác trên chuỗi, mảng chuỗi, mảng con trỏ chuỗi. Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Phương pháp lập trình - Chương 7: Chuỗi ký tự (2016)

  1. Chương 7
  2. Nội dung trình bày 1. Kí tự 2. Giới thiệu chuỗi 3. Khai báo và khởi tạo chuỗi 4. Nhập, xuất chuỗi 5. Một số hàm thao tác trên chuỗi 6. Mảng chuỗi 7. Mảng con trỏ chuỗi
  3. 1. Kí tự: Khai báo  Khai báo: char Tên_biến; ◦Ví dụ:  char ch;  Trong bộ nhớ, biến kí tự không lưu kí tự mà lưu  mã ASCII của nó, do đó có thể viết: ch = 97;  thay cho   ch='a';  Hàm nhập ký tự: getchar() ◦Ví dụ: char ch; ch = getchar();  Hàm xuất ký tự: putchar(char) ◦Ví dụ: putchar(ch);  Các hàm trên kí tự thuộc thư viện stdio.h, ctype.h
  4. 1. Kí tự: Một số hàm (ctype.h)  int isalpha(int ch): hàm trả về số khác 0  nếu ch là kí tự chữ cái, ngược lại hàm trả về 0 ◦Ví dụ:  int  i = isalpha(‘x’); //  i!=0 int  j = isalpha(‘1’); //  j=0  int isdigit(int ch): hàm trả về số khác 0  nếu ch là kí tự chữ số, ngược lại hàm trả về 0 ◦Ví dụ:  int  i = isalpha(‘x’); //  i=0 int  j = isalpha(‘1’); //  j!=0  int isascii(int ch): hàm trả về số khác 0  nếu ch là một ký tự có mã ASCII 
  5. 1. Kí tự: Một số hàm (ctype.h)  int isspace(int ch): hàm trả về số khác 0  nếu ch là kí tự khoảng trắng, ngược lại hàm trả về  0 ◦Ví dụ:  int  i = isspace(‘ ’); //  i!=0 int  j = isspace(‘x’); //  j=0  int iscntrl(int ch) : hàm trả về số khác 0  nếu ch là kí tự điều khiển, ngược lại hàm trả về 0  int isupper(int ch) : hàm trả về số khác 0  nếu ch là kí tự in hoa, ngược lại hàm trả về 0 ◦Ví dụ:  int  i = isupper(‘Y’); //  i!=0 int  j = isupper(‘y’); //  j=0
  6. 1. Kí tự: Một số hàm (ctype.h)  int islower(int ch) : hàm trả về số khác 0  nếu ch là kí tự in thường, ngược lại hàm trả về 0 ◦Ví dụ:  int  i = islower(‘Y’); //  i=0 int  j = islower(‘y’); //  j!=0  int toupper(int ch) : hàm trả về kí tự in hoa  của kí tự ch ◦Ví dụ:  char  c = toupper(‘y’); //  c=‘Y’  int tolower(int ch) : hàm trả về kí tự in  thường của kí tự ch ◦Ví dụ:  char  c = tolower(‘Y’); //  c=‘y’
  7. 1. Kí tự: Ví dụ #include  #include  #include  #include  void main() {   const int MAX=80; for ( int i=0; i
  8. Nội dung trình bày 1. Kí tự 2. Giới thiệu chuỗi 3. Khai báo và khởi tạo chuỗi 4. Nhập, xuất chuỗi 5. Một số hàm thao tác trên chuỗi 6. Mảng chuỗi 7. Mảng con trỏ chuỗi
  9. 2. Giới thiệu chuỗi  Chuỗi: là một  mảng ký tự  được kết thúc bằng ký  tự null ('\0')  Ví dụ:  Hằng  chuỗi:  là  chuỗi  được  bao  quanh  bởi  cặp  dấu nháy đôi. Ví dụ: "Hello" ◦Không cần thêm ký tự null vào sau hằng chuỗi
  10. Nội dung trình bày 1. Kí tự 2. Giới thiệu chuỗi 3. Khai báo và khởi tạo chuỗi 4. Nhập, xuất chuỗi 5. Một số hàm thao tác trên chuỗi 6. Mảng chuỗi 7. Mảng con trỏ chuỗi
  11. 3. Khai báo và khởi tạo chuỗi  Cách 1: Dùng mảng một chiều char Tên_chuỗi[ Số_kí_tự_tối_đa ]; ◦Ví dụ:  char name[30];   Cách 2: Dùng con trỏ char* Tên_chuỗi; ◦Ví dụ: char *str; (bộ  nhớ  sẽ  dành  2  byte  để  lưu  trữ  địa  chỉ  của  biến  con trỏ)
  12. 3. Khai báo và khởi tạo chuỗi (tt)  Chuỗi là mảng ký tự   Do đó để khởi tạo một chuỗi với những ký tự xác  định ta dùng cú pháp khai báo và khởi tạo mảng ◦Ví dụ: char str[] = {'H', 'e', 'l', 'l', 'o', '\0'};  Hoặc có thể viết theo 1 trong 2 cách sau: char Tên_biến[ ] = "Hằng Chuỗi" ; char* Tên_biến = "Hằng Chuỗi" ; ◦Ví dụ:  char str[] = "Hello"; char *str = "Hello";
  13. 3. Khai báo và khởi tạo chuỗi (tt) Lưu ý khi khai báo chuỗi và gán giá trị cho chuỗi ◦Ví dụ 1: ◦Ví dụ 1: char *name = "Thi No"; char name[20]= "Thi No"; ◦Ví dụ 2: ◦Ví dụ 2: char *name; char name[20]; name = "Thi No"; name = "Thi No"; //LỖI
  14. Nội dung trình bày 1. Kí tự 2. Giới thiệu chuỗi 3. Khai báo và khởi tạo chuỗi 4. Nhập, xuất chuỗi 5. Một số hàm thao tác trên chuỗi 6. Mảng chuỗi 7. Mảng con trỏ chuỗi
  15. 4.1. Nhập chuỗi  Để  nhập  dữ  liệu  cho  biến  chuỗi,  ta  dùng  hàm  gets của thư viện stdio.h char* gets( char* s ); ◦Hàm  gets  sẽ  đọc  các  ký  tự  gõ  từ  bàn  phím  vào  trong mảng trỏ đến bởi s cho đến khi nhấn Enter ◦Ký tự  null sẽ được tự động đặt sau ký tự cuối cùng  của chuỗi ◦Ví dụ:  char s[10]; gets(s);  Hoặc  có  thể  dùng  lệnh  cin  để  nhập  chuỗi,  tuy  nhiên có sự khác biệt
  16. 4.2. Xuất chuỗi  Để  xuất  chuỗi  ra  màn  hình,  ta  dùng  hàm  puts  của thư viện stdio.h int puts(const char *s); ◦Ví dụ: char str[] = "Hello"; puts(str);  Hoặc có thể dùng lệnh cout để xuất chuỗi
  17. Ví dụ: Nhập, xuất chuỗi #include  #include  void main() { char str[20]; // hoặc char *str; cout
  18. Nội dung trình bày 1. Kí tự 2. Giới thiệu chuỗi 3. Khai báo và khởi tạo chuỗi 4. Nhập, xuất chuỗi 5. Một số hàm thao tác trên chuỗi 6. Mảng chuỗi 7. Mảng con trỏ chuỗi
  19. 5. Một số hàm trên chuỗi  Các hàm trên chuỗi thuộc thư viện string.h  Toán tử []: Truy xuất từng ký tự, vì chuỗi là một  mảng nên có thể truy xuất từng phần tử char name[] = "John Doe"; name[1] = 'a';  strlen(char* s): Lấy số kí tự của chuỗi s,  không tính ký tự ‘\0’ char name[] = "John Doe"; cout
  20. 5. Một số hàm trên chuỗi (tt)  strcpy(char* s1, char* s2): Sao chép chuỗi s2 vào s1 ◦Ví dụ: char str1[10], str2[10]; cout
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2