Bài giảng Tin học đại cương: Chương 4 - Nguyễn Duy Hiệp
lượt xem 5
download
Bài giảng Tin học đại cương: Chương 4 cung cấp những kiến thức về xâu ký tự – string. Nội dung trình bày trong chương này gồm có: Xâu ký tự, lưu trữ xâu ký tự, khởi tạo và in nội dung xâu, nhập xâu từ bàn phím, một số ví dụ, một số hàm trong thư viện ctype.h và string.h. Mời các bạn cùng tham khảo.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Tin học đại cương: Chương 4 - Nguyễn Duy Hiệp
- 10/25/2010 Nội dung Xâu ký tự Lưu trữ xâu ký tự 4. Xâu ký tự – string Khởi tạo và in nội dung xâu Nhập xâu từ bàn phím Một số ví dụ Một số hàm trong thư viện ctype.h và string.h 4 Xâu ký tự – string 4 Xâu ký tự – string printf ("Programming in C is fun.\n"); Mảng ký tự char word [] = { 'H', 'e', 'l', 'l', 'o', '!' }; "Programming in C is fun.\n" Để in ra xâu ta in lần lượt từng ký tự Xâu ký tự: for ( i = 0; i
- 10/25/2010 4 Xâu ký tự – string 4 Xâu ký tự – string Giải pháp: sử dụng một ký tự đặc biệt (ký tự null) báo Khởi tạo hiệu kết thúc xâu : '\0' char tên_biến[độ_dài]={nội_dung}; const char word [] = { 'H', 'e', 'l', 'l', 'o', '!', '\0' }; Ví dụ Tìm độ dài của xâu char word[] = { "Hello!" }; char word[] = "Hello!" ; int count = 0; char word[] = { 'H', 'e', 'l', 'l', 'o', '!', '\0' }; while ( str[count] != '\0' ) ++count; char word[10] = { "Hello!" }; char word[6] = { "Hello World!" }; ??? 4 Xâu ký tự – string 4 Xâu ký tự – string In nội dung: #include int main (void) Hàm printf { Hàm printf xác định kết thúc xâu bằng ký tự null int i = 0; char str[30] = "This is a sample"; printf ("Programming in C is fun.\n"); char word[] = {'H', 'e', 'l', 'l', 'o', '!', '\0'}; In nội dung mảng ký tự kết thúc bằng ký tự null (‘\0’) printf("Noi dung cac xau\n"); printf ("%s\n", word); printf("xau str: %s\n", str); printf("xau word: %s\n", word); Hàm puts for(i=0; i
- 10/25/2010 4 Xâu ký tự – string 4 Xâu ký tự – string Nhập xâu từ bàn phím Hàm gets Hàm scanf( ) gets(tên_biến); char string[81]; int main (void) scanf ("%s", string); { char s1[81], s2[81], s3[81]; int main (void) printf ("Nhap xau 1:"); gets(s1); { printf ("Nhap xau 2:"); gets(s2); char s1[81], s2[81], s3[81]; printf ("Nhap xau 3:"); gets(s3); printf ("Enter text:\n"); scanf ("%s%s%s", s1, s2, s3); printf ("\ns1 = %s\ns2 = %s\ns3 = %s\n", printf ("\ns1 = %s\ns2 = %s\ns3 = %s\n", s1, s2, s3); s1, s2, s3); return 0; return 0; } } 4 Xâu ký tự – string 4 Xâu ký tự – string VD1. Viết chương trình nhập nội dung xâu từ bàn phím bằng cách nhập lần lượt từng ký tự trong xâu sử dụng hàm getchar() VD2. Ghép nội dung hai xâu s1 và s2 lại với nhau để tạo thành char character, buffer[81]; xâu mới. int i = 0; printf("Nhap xau:"); int i, j; do // copy noi dung s1 vao result { for ( i = 0; s1[i] != '\0'; ++i ) character = getchar(); result[i] = s1[i]; buffer[i] = character; ++i; // copy noi dung s2 vao result } for ( j = 0; s2[j] != '\0'; ++j ) result[i + j] = s2[j]; while ( character != '\n' ); buffer[i ‐ 1] = '\0'; // them ky tu ket thuc vao xau ket qua printf("Noi dung xau: %s\n",buffer); result [i + j] = '\0'; 3
- 10/25/2010 4 Xâu ký tự – string 4 Xâu ký tự – string Ký hiệu Ý nghĩa VD3. So sánh hai xâu s1 và s2 có bằng nhau hay không. Hai xâu \a Audible alert bằng nhau là hai xâu có các ký tự tại các vị trí tương ứng giống \b Backspace nhau. printf ("\aWARNING!!\n"); \f Form feed \n Newline int areEqual; printf ("%i\t%i\t%i\n", a, b, c); \r Carriage return while ( s1[i] == s2 [i] && \t Horizontal tab s1[i] != '\0' && s2[i] != '\0' ) printf ("\\t is the horizontal tab \v Vertical tab ++i; character.\n"); \\ Backslash \” Double quote if ( s1[i] == '\0' && s2[i] == '\0' ) \’ Single quote areEqual = 1; printf ("\"Hello,\" he said.\n"); \? Question mark else areEqual = 0; Một số ký tự đặc biệt 4 Xâu ký tự – string 4 Xâu ký tự – string Một số hàm trong thư viện ctype.h Một số hàm trong thư viện string.h Hàm Ý nghĩa Ví dụ Hàm Ý nghĩa Ví dụ isalnum(c) Kiểm tra một ký tự có phải là chữ cái hoặc số hay isalnum (‘a’) TRUE strcat Nối hai xâu ký tự lại làm một char *strcat(char *dest, không (A‐Z, a‐z, 0‐9) const char *src); isalpha(c) Kiểm tra một ký tự có phải là chữ cái hay không (A‐ isalpha(‘3’) FALSE Z, a‐z) strncat Nối hai xâu ký tự lại làm một (chỉ nối n ký tự char *strncat(char *dest, đầu của xâu nguồn) const char *src, size_t n); isdigit(c) Kiểm tra một ký tự có phải là chữ số hay không (0‐ 9) strlen Trả về độ dài của một xâu ký tự (số ký tự có char str[]="Hello!"; Kiểm tra một chữ cái là chữ thường (a-z). trong xâu) printf("%d",strlen(str)); islower(c) isupper(c) Kiểm tra một chữ cái là chữ hoa (A‐Z). strcmp So sánh hai xâu ký tự, trả về giá trị if(strcmp(str,word)==0) printf("They are equal!"); isspace(c) Kiểm tra ký tự có phải là dấu cách trống hay không strcpy Copy nội dung của xâu thứ hai vào xâu thứ nhất strcpy(str,word); isxdigit(c) Kiểm tra ký tự có phải là chữ số trong hệ hexa hay không (0‐9, A‐F, a‐f). strchr Tìm kiếm một ký tự trong xâu. Nếu tìm thấy if(strchr(string, character)) thì trả về vị trí xuất hiện đầu tiên puts("Character found"); toupper(c) Chuyển ký tự chữ cái từ thường thành hoa (nếu không phải chữ cái thì không làm gì cả) strstr Tìm kiếm một xâu con trong xâu ký tự ban pointer = strstr(string1, đầu. Hàm trả về con trỏ tới vị trí tìm được, string2); tolower(c) Chuyển ký tự chữ cái từ hoa thành thường nếu không tìm thấy thì trả về NULL (nếu không phải chữ cái thì không làm gì cả) 4
- 10/25/2010 VD1. Viết chương trình nhập vào một xâu ký tự bất kỳ từ bàn phím. Đếm và in ra màn hình số lượng ký tự hoa, ký tự thường và chữ số trong xâu đó. VD2. Viết chương trình in ra màn hình nội dung một xâu ký tự nhưng theo thứ tự ngược. 5
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng tin học đại cương - trường ĐH Tôn Đức Thắng
175 p | 1024 | 287
-
Bài giảng Tin học đại cương - Chương 1: Các vấn đề cơ bản về CNTT
167 p | 419 | 31
-
Bài giảng Tin học đại cương: Bài 1 - ĐH Bách khoa Hà Nội
33 p | 263 | 21
-
Bài giảng Tin học đại cương: Bài 4 - ĐH Bách khoa Hà Nội
8 p | 155 | 13
-
Bài giảng Tin học đại cương: Chương 2 - Tin học và công nghệ thông tin
12 p | 183 | 10
-
Bài giảng Tin học đại cương: Bài 3 - ĐH Bách khoa Hà Nội
14 p | 143 | 8
-
Bài giảng Tin học đại cương - Nguyễn Vũ Duy
95 p | 43 | 8
-
Bài giảng Tin học đại cương: Phần 1 - ThS. Phạm Thanh Bình
18 p | 93 | 6
-
Bài giảng Tin học đại cương: Chương 1 - Đại cương về tin học
16 p | 124 | 5
-
Bài giảng Tin học đại cương: Chương 1 - Thông tin
29 p | 150 | 5
-
Bài giảng Tin học đại cương: MS Excel - ThS. Ngô Cao Định
31 p | 11 | 4
-
Bài giảng Tin học đại cương: Tổng quan về máy tính - ThS. Ngô Cao Định
38 p | 13 | 4
-
Bài giảng Tin học đại cương: Biểu diễn và xử lý thông tin - ThS. Ngô Cao Định
56 p | 7 | 3
-
Bài giảng Tin học đại cương: Mạng và Internet - ThS. Ngô Cao Định
55 p | 9 | 3
-
Bài giảng Tin học đại cương: Hệ điều hành - ThS. Ngô Cao Định
86 p | 8 | 2
-
Bài giảng Tin học đại cương: Chương 1 - Trần Quang Hải Bằng (ĐH giao thông Vận tải)
31 p | 80 | 2
-
Bài giảng Tin học đại cương: Bài 13 - Bùi Thị Thu Cúc
10 p | 78 | 2
-
Bài giảng Tin học đại cương: Tổng quan về cơ sở dữ liệu - ThS. Ngô Cao Định
11 p | 7 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn