Bài giảng Cơ sở lập trình 1: Chương 7 - Lê Quý Tài
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Bài giảng Cơ sở lập trình 1: Chương 7 - Lê Quý Tài Chương 7 XÂU KÍ TỰKhoa Hệ thống thông tin quản lý Hà Nội – 2015Nội dung 1 Khai báo 2 Các thao tác trên xâu kí tự 3 Mảng xâu kí tự 4 Một số hàm xử lý xâu kí tự12/24/15 Chương 7 - Xâu kí tự 2/211. Khai báo o Khái niệm n Xâu kí tự trong C được xây dựng như một mảng một chiều các kí tự n Xâu kí tự kết thúc bằng kí tự ‘ ’ (kí tự NULL trong bảng mã ASCII) Độ dài tối đa của xâu= kích thước mảng – 1 Khai báo nên dành ra 1 ô nhớ để chứa kí tự ‘ ’ o Ví dụ char line[80]; // Dài tối đa 79 kí tự char hoten[30]; // Dài tối đa 29 kí tự12/24/15 Chương 7 - Xâu kí tự 3/21Khai báo có khởi tạo giá trị o Độ dài cụ thể char string[40]=Ngon ngu C; n Khởi tạo xâu kí tự có độ dài tối đa 39 kí tự với giá trị ban đầu là xâu “Ngon ngu C” o Tự xác định độ dài char str[]=“Ngon ngu C”; n Chương trình dịch tự bố trí một mảng để chứa dãy kí tự và 1 ô chứa kí hiệu ‘ ’ o Chú ý: n Khai báo xâu kí tự với con trỏ char *message; message=“Xin chao!”;12/24/15 Chương 7 - Xâu kí tự 4/212. Các thao tác trên xâu kí tự o Nhập xâu từ bàn phím o Xuất xâu ra màn hình o Xác định độ dài xâu o Ghép xâu o Sao chép xâu o So sánh xâu o Tìm kiếm kí tự o …12/24/15 Chương 7 - Xâu kí tự 5/21a) Nhập xâu từ bàn phím o Sử dụng hàm scanf với đặc tả “%s” scanf(“%s”,str); n Chỉ nhận các kí tự từ bàn phím đến khi gặp kí tự dấu cách, tab, kí tự xuống dòng. n Xâu nhận được không bao gồm dấu cách o Ví dụ: char monhoc[50]; printf(“Nhap mot xau ki tu: “); scanf(“%s”, monhoc); printf(“Xau nhan duoc la: %s”, monhoc); Nhap mot chuoi: Ngon ngu lap trinh C Chuoi nhan duoc la: Ngon _12/24/15 Chương 7 - Xâu kí tự 6/21a) Nhập xâu từ bàn phím (tt) o Sử dụng hàm gets gets(str); n Nhận các kí tự từ bàn phím đến khi gặp kí tự xuống dòng. n Xâu nhận được là những gì người dùng nhập (trừ kí tự xuống dòng). o Ví dụ char monhoc[50]; printf(“Nhap mot chuoi: “); gets(monhoc); printf(“Chuoi nhan duoc la: %s”, monhoc); Nhap mot chuoi: Ngon ngu lap trinh C Chuoi nhan duoc la: Ngon ngu lap trinh C _12/24/15 Chương 7 - Xâu kí tự 7/21b) Xuất xâu ra màn hình o Sử dụng hàm printf với đặc tả “%s” char monhoc[50] = “Ngon ngu C”; printf(“%s”, monhoc); Ngon ngu C _ o Sử dụng hàm puts char monhoc[50] = “Ngon ngu C”; puts(monhoc); Ngon ngu C _ _ printf(“%s ”,12/24/15 monhoc); Chương 7 - Xâu kí tự 8/21c) Xác định độ dài xâu o Tự xác định Đếm cho đến khi gặp kí tự ‘ ’ char str[]=“Ngon ngu C“; int dem=0; while (str[dem]!= ) dem++; printf(Do dai xau la: %d ki tu,dem); o Sử dụng con trỏ để xử lí xâu char *message; message=Ngon ngu C; int dem=0; while (*message!= ){*message++;dem++;}12/24/15printf(Do dai 7 xau Chương la: - Xâu kí tự %d ki tu,dem); 9/21c) Xác định độ dài xâu (tt) o Dùng hàm Hàm strlen(str) trong thư viện string.h printf(Do dai xau la:%d,strlen(str)); o Bài tập: 1. Nhập từ bàn phím xâu st1, viết ra màn hình xâu đó theo chiều ngược lại. 2. Nhập từ bàn phím xâu st2, chuyển xâu st2 sang chữ hoa và viết ra màn hình xâu kết quả ra màn hình.12/24/15 Chương 7 - Xâu kí tự 10/21d) Ghép xâu o Ghép xâu st2 vào sau xâu st1 n Hàm strcat(st1,st2): nối xâu st2 vào sau xâu st1 #include #include #define maxst 40 main() { char st1[maxst]=Chao mung; char st2[maxst]=Ngon ngu C; if (maxst>strlen(st1)+strlen(st2)) puts(strcat(st1,st2)); else printf(Khong du bo nho!);12/24/15 Chương 7 - Xâu kí tự 11/21e) Sao chép xâu o C không cho phép gán một xâu cho một biến do xâu kí tự là một mảng. n Ví dụ: Không viết được line=“Hello”; Dùng hàm sao chép xâu hoặc viết vòng lặp sao chép từng kí tự o Hàm sao chép xâu n strcpy(st1,st2) – gán xâu st2 cho xâu st1 n Ví dụ: strcpy(line,”Hello”); o Chú ý: ...
Tìm kiếm theo từ khóa liên quan:
Cơ sở lập trình Bài giảng Cơ sở lập trình 1 Xâu kí tự Mảng xâu kí tự Khai báo xâu kí tự Thao tác trên xâu kí tự Hàm xử lý xâu kí tựGợi ý tài liệu liên quan:
-
Giáo trình Tin học đại cương: Phần 2 - Trần Đình Khang
118 trang 119 0 0 -
Tìm hiểu về ngôn ngữ lập trình C: Phần 2 - Quách Tuấn Ngọc
210 trang 89 0 0 -
Bài giảng Tin đại cương: Bài 9 - Vũ Thương Huyền
28 trang 40 0 0 -
Bài giảng cơ sở lập trình nâng cao - Chương 8
37 trang 32 0 0 -
Câu hỏi trắc nghiệm ôn tập học kì 2 môn Tin học lớp 10 - Trường THPT Ngã Năm
12 trang 28 0 0 -
Giáo trình Cơ sở lập trình: Phần 2
114 trang 28 0 0 -
Bài giảng Tin học đại cương: Bài 8 - Nguyễn Văn Đồng
28 trang 28 0 0 -
Bài giảng Cơ sở lập trình - ĐH Thương Mại
0 trang 27 0 0 -
Bài giảng Cơ sở lập trình 2: Chương 2 - Lê Quý Tài
47 trang 27 0 0 -
Bài giảng Cơ sở lập trình: Struct (Kiểu cấu trúc) - Trịnh Tấn Đạt
35 trang 26 0 0 -
Bài giảng Cơ sở lập trình 2: Chương 6 - Lê Quý Tài
14 trang 24 0 0 -
Bài giảng Tin học đại cương: Bài 6 - Bùi Trọng Tùng
16 trang 24 0 0 -
Giáo trình Cơ sở lập trình: Phần 1
77 trang 23 0 0 -
Bài giảng Cơ sở lập trình 2: Chương 5 - Lê Quý Tài
46 trang 23 0 0 -
Bài giảng cơ sở lập trình nâng cao - Chương 4
36 trang 22 0 0 -
Bài giảng Cơ sở lập trình 2: Chương 1 - Lê Quý Tài
46 trang 22 0 0 -
Bài giảng Cơ sở lập trình: Các cấu trúc điều khiển (Control statements) - Trịnh Tấn Đạt
78 trang 21 0 0 -
Bài giảng Cơ sở lập trình 2: Chương 4 (phần 2) - Lê Quý Tài
26 trang 21 0 0 -
Bài giảng cơ sở lập trình nâng cao - Chương 3
39 trang 21 0 0 -
Lý thuyết ngôn ngữ và tính toán: Phần 2 - Nguyễn Văn Ba
148 trang 21 0 0