Bài giảng Nhập môn lập trình - Chương 9 giúp người học có thêm những hiểu biết về chuỗi ký tự. Những nội dung cần nắm bắt trong chương này gồm có: Khái niệm chuỗi ký tự, khởi tạo chuỗi ký tự, các thao tác trên chuỗi ký tự. . | Nội dung NMLT - Chuỗi ký tự Khái niệm 1 Khởi tạo 2 Các thao tác trên chuỗi ký tự 3 Bài tập 4 Khái niệm Khái niệm Kiểu char chỉ chứa được một ký tự. Để lưu trữ một chuỗi (nhiều ký tự) ta sử dụng mảng (một chiều) các ký tự. Chuỗi ký tự kết thúc bằng ký tự ‘\0’ (null) Độ dài chuỗi = kích thước mảng – 1 Ví dụ NMLT - Chuỗi ký tự char hoten[30]; // Dài 29 ký tự char ngaysinh[9]; // Dài 8 ký tự Khởi tạo Khởi tạo như mảng thông thường Độ dài cụ thể Tự xác định độ dài NMLT - Chuỗi ký tự char s[10] = {‘T’, ‘H’, ‘C’, ‘S’, ‘A’, ‘ ’, ‘\0’}; char s[10] = “THCS A”; // Tự động thêm ‘\0’ char s[] = {‘T’, ‘H’, ‘C’, ‘S’, ‘ ’, ‘A’, ‘\0’}; char s[] = “THCS A”; // Tự động thêm ‘\0’ ‘T’ ‘H’ ‘C’ ‘S’ ‘ ’ ‘A’ 0 1 2 3 4 5 6 7 8 9 ‘T’ ‘H’ ‘C’ ‘S’ ‘ ’ ‘A’ 0 1 2 3 4 5 ‘\0’ ‘\0’ 6 Xuất chuỗi Sử dụng hàm printf với đặc tả “%s” Sử dụng hàm puts NMLT - Chuỗi ký tự char monhoc[50] = “Tin hoc co so A”; printf(“%s”, monhoc); // Không xuống dòng char monhoc[50] = “Tin hoc co so A”; puts(monhoc); // Tự động xuống dòng printf(“%s\n”, monhoc); Tin hoc co so A Tin hoc co so A _ _ Nhập chuỗi Sử dụng hàm scanf với đặc tả “%s” Chỉ nhận các ký tự từ bàn phím đến khi gặp ký tự khoảng trắng hoặc ký tự xuống dòng. Chuỗi nhận được không bao gồm ký tự khoảng trắng và xuống dòng. NMLT - Chuỗi ký tự char monhoc[50]; printf(“Nhap mot chuoi: “); scanf(“%s”, monhoc); printf(“Chuoi nhan duoc la: %s”, monhoc); Nhap mot chuoi: Tin hoc co so A Chuoi nhan duoc la: Tin _ Nhập chuỗi Sử dụng hàm gets Nhận các ký tự từ bàn phím đến khi gặp ký tự xuống dòng. Chuỗi nhận được là những gì người dùng nhập (trừ ký tự xuống dòng). NMLT - Chuỗi ký tự char monhoc[50]; printf(“Nhap mot chuoi: “); gets(monhoc); printf(“Chuoi nhan duoc la: %s”, monhoc); Nhap mot chuoi: Tin hoc co so A Chuoi nhan duoc la: Tin hoc co so A _ Một số hàm thao tác trên chuỗi Thuộc thư viện strcpy strdup strlwr/strupr strrev strcmp/stricmp strcat strlen strstr NMLT - Chuỗi ký tự Hàm sao chép chuỗi NMLT - Chuỗi ký tự Sao chép | Nội dung NMLT - Chuỗi ký tự Khái niệm 1 Khởi tạo 2 Các thao tác trên chuỗi ký tự 3 Bài tập 4 Khái niệm Khái niệm Kiểu char chỉ chứa được một ký tự. Để lưu trữ một chuỗi (nhiều ký tự) ta sử dụng mảng (một chiều) các ký tự. Chuỗi ký tự kết thúc bằng ký tự ‘\0’ (null) Độ dài chuỗi = kích thước mảng – 1 Ví dụ NMLT - Chuỗi ký tự char hoten[30]; // Dài 29 ký tự char ngaysinh[9]; // Dài 8 ký tự Khởi tạo Khởi tạo như mảng thông thường Độ dài cụ thể Tự xác định độ dài NMLT - Chuỗi ký tự char s[10] = {‘T’, ‘H’, ‘C’, ‘S’, ‘A’, ‘ ’, ‘\0’}; char s[10] = “THCS A”; // Tự động thêm ‘\0’ char s[] = {‘T’, ‘H’, ‘C’, ‘S’, ‘ ’, ‘A’, ‘\0’}; char s[] = “THCS A”; // Tự động thêm ‘\0’ ‘T’ ‘H’ ‘C’ ‘S’ ‘ ’ ‘A’ 0 1 2 3 4 5 6 7 8 9 ‘T’ ‘H’ ‘C’ ‘S’ ‘ ’ ‘A’ 0 1 2 3 4 5 ‘\0’ ‘\0’ 6 Xuất chuỗi Sử dụng hàm printf với đặc tả “%s” Sử dụng hàm puts NMLT - Chuỗi ký tự char monhoc[50] = “Tin hoc co so A”; printf(“%s”, monhoc); // Không xuống dòng char monhoc[50] = “Tin hoc co so A”; puts(monhoc); // Tự động xuống