Bài giảng Captech - Chương 10: Chuỗi

Mục tiêu bài học

Giải thích biến và hằng chuỗi.

Giải thích con trỏ đến chuỗi.

Thực hiện các thao tác nhập/xuất chuỗi.

Giải thích các hàm thao tác chuỗi.

Giải thích cách thức truyền mảng vào hàm.

Mô tả cách thức sử dụng chuỗi như các đối số của hàm.

 

ppt20 trang | Chia sẻ: hienduc166 | Lượt xem: 854 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Bài giảng Captech - Chương 10: Chuỗi, để tải tài liệu về máy bạn click vào nút TẢI VỀ ở trên
ChuỗiBài 10Mục tiêu bài họcGiải thích biến và hằng chuỗi.Giải thích con trỏ đến chuỗi.Thực hiện các thao tác nhập/xuất chuỗi.Giải thích các hàm thao tác chuỗi. Giải thích cách thức truyền mảng vào hàm. Mô tả cách thức sử dụng chuỗi như các đối số của hàm.Các Biến Chuỗi Chuỗi là mảng ký tự kết thúc bởi ký tự null (‘\0’).Có thể gán các hằng chuỗi cho các biến chuỗi. Hằng chuỗi là một chuỗi các ký tự nằm trong dấu nháy kép.Ký tự null ‘\0’ được tự động thêm vào biểu diễn bên trong của chuỗi. Khi khai báo một biến chuỗi, hãy dành thêm một phần tử trống cho ký tự kết thúc.Khai Báo Biến Chuỗi Khai báo một biến chuỗi tiêu biểu:	char str[10]; str là một biến mảng ký tự có thể lưu giữ tối đa 10 ký tự bao gồm cả ký tự kết thúc.  Các thao tác Nhập/Xuất chuỗi Sử dụng các hàm trong thư viện nhập/xuất chuẩn stdio.h để thực hiện các thao tác nhập/xuất chuỗi. Hàm gets() là cách đơn giản nhất để nhập vào một chuỗi thông qua thiết bị nhập chuẩn. Các ký tự được nhập vào cho đến khi ấn phím Enter Hàm gets() thay thế ký tự sang dòng mới ‘\n’ bằng ký tự ‘\0’ Cú pháp:	gets(str);Các thao tác Nhập/Xuất chuỗi - tt Hàm puts() được dùng để hiển thị một chuỗi trên thiết bị xuất chuẩn. Cú pháp :	puts(str); Các hàm scanf() và printf() được sử dụng để nhập và hiển thị các kiểu dữ liệu hỗn hợp trong cùng một câu lệnh. Cú pháp để nhập chuỗi:	scanf(“%s”, str); Cú pháp để hiển thị chuỗi:	printf(“%s”, str); Các hàm về chuỗi Các hàm xử lý chuỗi nằm trong tập tin string.h. Một số thao tác được thực hiện bởi các hàm này là: Ghép chuỗi So sánh chuỗi Xác định vị trị một ký tự trong chuỗi Sao chép một chuỗi sang chuỗi khác Tính chiều dài chuỗi Elementary Programming with C/Session 1/ Slide of 20Hàm strcat() Nối hai giá trị chuỗi vào một chuỗi. Cú pháp:	strcat(str1, str2);Nối str2 vào cuối chuỗi str1Trả về str1Elementary Programming with C/Session 1/ Slide of 20Hàm strcmp() So sánh hai chuỗi và trả về một giá trị số nguyên dựa trên kết quả của sự so sánh.Cú pháp:	strcmp(str1, str2);Hàm trả về một giá trị: Nhỏ hơn 0, nếu str1str2Elementary Programming with C/Session 1/ Slide of 20Hàm strchr() Xác định vị trí xuất hiện của một ký tự trong một chuỗi. Cú pháp:	strchr(str, chr); Hàm trả về :con trỏ trỏ đến vị trí tìm được đầu tiên của ký tự (trỏ bởi chr) trong chuỗi str. NULL nếu chr không có trong chuỗiElementary Programming with C/Session 1/ Slide of 20Hàm strcpy() Sao chép giá trị trong một chuỗi vào một chuỗi khác. Cú pháp:	strcpy(str1, str2); Giá trị của str2 được chép vào str1 Hàm trả về str1Elementary Programming with C/Session 1/ Slide of 20Hàm strlen() Xác định chiều dài của chuỗi. Cú pháp:	strlen(str); Hàm trả về một giá trị nguyên là độ dài của str.Elementary Programming with C/Session 1/ Slide of 20 Khi mảng được truyền vào hàm như một đối số, chỉ có địa chỉ của mảng được truyền.Tên mảng chính là là địa chỉ của mảng. 	void main() {	int ary[10];		fn_ary(ary);		}Truyền Mảng vào Hàm Elementary Programming with C/Session 1/ Slide of 20Truyền Mảng vào Hàm - tt#includevoid main() {int num[5], ctr, sum=0;int sum_arr(int num_arr[]); 	/* Function declaration */	clrscr();	for(ctr=0;ctr#includevoid main() {	char lines[5][20];	int ctr, longctr=0;	int longest(char lines_arr[][20]); 	/* Function declaration */	clrscr();	for(ctr=0;ctr prev_len)	 l_ctr=i; /* Stores the subscript of the longer string */	prev_len=new_len;	}	return l_ctr;/* Returns the subscript of the longest string */}Vd Truyền Mảng vào Hàm - ttElementary Programming with C/Session 1/ Slide of 20Kết quả của chương trình trên:Enter string 1: TheEnter string 2: SigmaEnter string 3: ProtocolEnter string 4: RobertEnter string 5: LudlumThe longest string is ProtocolVd Truyền Mảng vào Hàm - ttElementary Programming with C/Session 1/ Slide of 20

File đính kèm:

  • pptSession 17.ppt