Làm quen với ngôn ngữ C

63 391 0
Làm quen với ngôn ngữ C

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Kỹ thuật lập trì nh 7 CHươNG 2 LàM QUEN VớI NGôN NGữ C * Giới thiệu ngôn ngữ C Ngôn ngữ C do Dennis Ritchie là người đầu tiên đề xuất, đ thiế t kế và cà i đặ t C trong môi trường UNIX. Nó có nguồn gốc từ ngôn ngữ BCPL do Martin Richards đ ưa ra và o nă m 1967 và ngôn ngữ B do Ken Thompson phá t triể n từ ngôn ngữ BCPL nă m 1970 khi viế t hệ điề u hà nh Unix. Cngôn ngữ lậ p trì nh đa dụng, cấ p cao nhưng lạ i có khả nă ng thực hiệ n cá c thao tá c như của ngôn ngữ Assembly. Vì thế ngôn ngữ C nhanh chóng đ ược cà i đ ặ t, sử dụ ng trê n má y vi tí nh và đ trở thà nh một công cụ lậ p trì nh khá mạ nh, hiệ n nay đang có khuynh hướng trở thà nh một ngôn ngữ lậ p trì nh chí nh cho má y vi tí nh trê n thế giới. * Đặc điể m ngôn ngữ C Ngôn ngữ C có những đặ c điể m cơ bả n sau : - Tí nh cô đọng (compact) : Ngôn ngữ C chỉ có 32 từ khoá chuẩ n, 40 toán tử chuẩ n mà hầ u hế t được biể u diể n bởi cá c d y ký tự ngắ n gọn. - Tí nh cấ u trúc (structured) : Ngôn ngữ C có một tậ p hợp các phát biể u lậ p trì nh cấ u trúc như phá t biể u quyế t định hoặ c lặ p. Do đó, nó cho phép chúng ta viế t chương trì nh có tổ chức và dể hiể u. - Tí nh tương thí ch (compactable) : Ngôn ngữ C có bộ lệ nh tiề n xử lý và cá c thư việ n chuẩ n là m cho cá c chương trì nh viế t bằ ng ngôn ngữ C có thể tương thí ch khi chuyể n từ má y tí nh nà y sang má y tí nh kiể u hoà n toà n khá c. - Tí nh linh động (flexible) : Ngôn ngữ C là một ngôn ngữ rấ t linh động về ngữ phá p, nó có thể chấ p nhậ n rấ t nhiề u cá ch thể hiệ n mà không có ở ngôn ngữ khá c như Pascal, nó giúp cho kí ch thước m lệ nh có thể thu gọn lạ i để chương trì nh thực thi nhanh chóng hơn. - Biê n dịch : Ngôn ngữ C đ ược biê n dịch bằ ng nhiề u bước và cho phép biê n dịch nhiề u tậ p tin chương trì nh riê ng rẽ thà nh cá c tậ p tin đối tượng (object) và nối cá c đối tượng đó lạ i với nhau (link) thà nh một chương trì nh thực thi thống nhấ t. I. CáC KHáI NIệM Cơ BảN I.1. Cấu trúc cơ bản của một chương trì nh C [tiề n xử lý] [Cá c hà m] main() Kỹ thuật lập trì nh 8 { [khai bá o biế n;] [nhậ p dữ liệ u ;] [xử lý ;] [xuấ t ;] } Ví dụ : Chương trì nh hiệ n trê n mà n hì nh câ u Chao cac ban void main() { printf(Chao cac ban\n); } Một và i nhậ n xét quan trọng : - Chương trì nh C bao giờ cũng có một hay nhiề u hà m, trong đó có một hà m chí nh bắ t buộc phả i có là hà m main(). Đâ y chí nh là hà m đ ược thực hiệ n đầ u tiê n trong chương trì nh. - Cặ p dấ u { } để xá c định một khối lệ nh. - Hà m printf( Chao cac ban \n) là hà m chuẩ n của C dùng để xuấ t câ u thông bá o Chao cac ban ra mà n hì nh. Ký tự \n là ký tự đặ c biệ t dùng để xuống dòng. - Dấ u ; để chấ m dứt một lệ nh. - Chương trì nh C có phâ n biệ t chữ thường với chữ hoa. Đa số cá c từ khoá của C đ ược viế t bằ ng chữ thường, còn một số í t đ ược viế t bằ ng chữ hoa mà ta phả i tuâ n thủ chặ t chẽ , nế u không thì chương trì nh dịch sẽ không hiể u. * Một vài ví dụ Ví dụ 1 : In bả ng lũy thừa 2 của cá c số nguyê n từ 10 đế n 50 /* Chương trì nh in bì nh phương cá c số từ 10 đế n 50*/ #include <stdio.h> void main() {int n; /*Khai bá o biế n n kiể u nguyê n */ n=10; /*Gá n n=10 */ while (n<=50) /*Lặ p từ 10 đế n 50 bằ ng while */ { printf(%3d \t %5d\n,n,n*n); /*in dạ ng 5d là dà nh 5 vị trí để in n và n 2 */ n++; /* Tă ng n lê n 1 */ } /*Hế t while*/ } /*Hế t main*/ Kỹ thuật lập trì nh 9 Ví dụ 2 : Tương tự như ví dụ 1 nhưng viế t cá ch khá c : #include <stdio.h> #define max 50 /*Tiề n xử lý, định nghĩ a max =50*/ void main() { int n; /*Khai bá o biế n n kiể u nguyê n*/ for (n=10; n<=max; n++) /*Lặ p từ 10 đế n 50 bằ ng for*/ printf(%3d \t %5d\n,n,n*n); /*in n và n 2 dạ ng 5d là nă m chữ số*/ } /*Hế t main*/ Ví dụ 3 : Chương trì nh in lũy thừa 2, 3, 4, 5; có dùng hà m để tí nh lũy thừa : #include <stdio.h> #define max 50 /*Tiề n xử lý, định nghĩ a max =50*/ float luythua(int n, int m) /*Hà m luythua với 2 thông số*/ { float s=1; /*Khai bá o và khởi tạ o biế n s*/ for ( ;m>0;m--) /*Lặ p giả m dầ n từ m tới 1*/ s=s*n; return s; /*Trả kế t quả về */ } void main() { int n,n2,n3,n4,n5; /*Khai bá o biế n kiể u nguyê n*/ for (n=10;n<=50;n++) /*Lặ p từ 10 đế n 50 bằ ng for*/ { n2= luythua(n,2); /*Gọi hà m luythua*/ n3= luythua(n,3); n4= luythua(n,4); n5= luythua(n,5); printf(%3d \t %5.2f \t %5.2f\t %5.2f\t %5.2f\t %5.2f\n, n,n2,n3,n4,n5); /*in n và n m dạ ng 5 chữ số với 2 số lẻ */ } } /*Hế t main*/ * Hàm xuất chuẩn printf() Cú pháp : printf(chuỗi-địnhdạ ng,thamso1,thamso2, .) ý nghĩ a : Hà m printf() sẽ xem xét chuỗi-địnhdạ ng, lấ y giá trị cá c tham số (nếu cầ n) để đặ t và o theo yê u cầ u của chuỗi-địnhdạ ng và gởi ra thiế t bị chuẩ n. Chuỗi-địnhdạ ng là một chuỗi ký tự, trong đó có những ký tự xuấ t ra nguyê n vẹ n hoặ c xuấ t ở dạ ng đặ c biệ t, và có thể có những chuỗi điề u khiể n cầ n lấ y giá trị của cá c tham số để thay và o đó khi in ra. Kỹ thuật lập trì nh 10 - Những ký tự đặc biệ t : Ký tự Tác dụng Mã ASCII \n Xuống hà ng mới 10 \t Tab 9 \b Xóa ký tự bê n trá i 8 \r Con trỏ trở về đầ u hà ng 13 \f Sang trang 12 \a Phá t tiế ng còi 7 \\ Xuấ t dấ u chéo ngược 92 \ Xuấ t dấ u nhá y đơn 39 \ Xuấ t dấ u nhá y kép 34 \xdd Xuấ t ký tự có m ASCII dạ ng Hex là dd \ddd Xuấ t ký tự có m ASCII dạ ng Dec là ddd \0 Ký tự NULL 0 - Chuỗi định dạng : % [ flag][width][.prec][F N h l] type Type : định kiể u của tham số theo sau chuỗi-địnhdạ ng để lấ y giá trị ra Type ý nghĩ a d,i Số nguyê n cơ số 10 u Số nguyê n cơ số 10 không dấ u o Số nguyê n cơ số 8 x Số nguyê n cơ số 16, chữ thường(a,b, .,f) X Số nguyê n cơ số 16, chữ in (A,B, .,F) f Số thực dạ ng [-]dddd.ddd . e Số thực dạ ng [-]d.ddd e[+/-]ddd E Số thực dạ ng [-]d.ddd E[+/-]ddd g,G Số thực dạ ng e(E) hay f tùy theo độ chí nh xá c c Ký tự s Chuỗi ký tự tậ n cùng bằ ng \0 % Dấ u % cầ n in Kỹ thuật lập trì nh 11 Flag : Dạ ng điề u chỉ nh Flag ý nghĩ a nế u không có in dữ liệ u ra với canh phả i - in dữ liệ u ra với canh trá i + Luôn bắ t đầ u số bằ ng + hay - # in ra tùy theo type, nế u: 0 : Chè n thê m 0 đứng trước giá trị >0 x,X : Chè n thê m 0x hay 0X đứng trước số nà y e,E,f : Luôn luôn có dấ u chấ m thậ p phâ n G,g : Như trê n nhưng không có số 0 đi sau Width : định kí ch thước in ra Width ý nghĩ a n Dà nh í t nhấ t n ký tự , điề n khoả ng trắ ng các ký tự còn trống 0n Dà nh í t nhấ t n ký tự , điề n số 0 cá c ký tự còn trống * Số ký tự í t nhấ t cầ n in nằ m ở tham số tương ứng Prec : định kí ch thước phầ n lẽ in ra Prec ý nghĩ a không có độ chí nh xá c như bì nh thường 0 d,i,o,u,x độ chí nh xá c như cũ e,E,f Không có dấ u chấ m thậ p phâ n n nhiề u nhấ t là n ký tự (số) * Số ký tự í t nhấ t cầ n in nằ m ở tham số tương ứng Các chữ bổ sung : F Tham số là con trỏ xa XXXX:YYYY N Tham số là con trỏ gầ n YYYY h Tham số là short int l Tham số là long int (d,i,o,u,x,X) double (e,E,f,g,G) Ví dụ 1: char c=A; char s[]=Blue moon! ; Kỹ thuật lập trì nh 12 Dạng Thông số tương ứng Xuất Nhận xét %c c A độ rộng 1 %2c c A độ rộng 2, canh phả i %-3c c A độ rộng 3, canh trá i %d c 65 M ASCII của A %s s Blue moon! độ rộng 10 %3s s Blue moon! Nhiề u ký tự hơn cầ n thiế t %.6s s Blue m Chí nh xá c 6 ký tự %-11.8s s Blue moo Chí nh xá c 8, canh trá i Ví dụ 2: int i = 123; float x = 0.123456789; Dạng Thông số tương ứng Xuất Nhận xét %d i 123 độ rộng 3 %05d i 00123 Thê m 2 số 0 %7o i 123 Hệ 8, canh phả i %-9x i 7b Hệ 16, canh trá i %c i { Ký tự có m ASCII 123 %-#9x i 0x7b Hệ 16, canh trá i %10.5f x 0.12346 độ rộng 10, có 5 chữ số thậ p phâ n %-12.5e x 1.23457e-01 Canh trá i, in ra dưới dạ ng khoa học Ví dụ 3: Viế t chương trì nh in hì nh chữ nhậ t kép bằ ng cá c ký tự ASCII C9 CD BB C8 CD BC void main() { printf(\n\xC9\xCD\xBB); printf(\n\xC8\xCD\xBC\n); } Kỹ thuật lập trì nh 13 I.2. Kiể u dữ liệ u cơ bản I.2.1. định nghĩ a: Kiể u dữ liệ u cơ bả n là kiể u dữ liệ u có giá trị đơn, không phâ n chia được nữa như số, ký tự I.2.2. Phân loại: Tê n kiể u ý nghĩ a Kí ch thước Phạm vi char Ký tự 1 byte -128 127 unsigned char Ký tự không dấ u 1 byte 0 255 unsigned short Số nguyê n ngắ n không dấ u 2 bytes 0 65535 enum Số nguyê n có dấ u 2 bytes -32768 32767 short int Số nguyê n có dấ u 2 bytes -32768 32767 int Số nguyê n có dấ u 2 bytes -32768 32767 unsigned int Số nguyê n không dấ u 2 bytes 0 65535 long Số nguyê n dà i có dấ u 4 bytes -2147483648 2147483647 unsigned long Số nguyê n dà i không dấ u 4 bytes 0 4294967295 float Số thực độ chí nh xá c đơn 4 bytes 3.4 E-38 3.4 E+38 double Số thực độ chí nh xá c kép 8 bytes 1.7 E-308 1.7 E+308 long double Số thực độ chí nh xá c hơn double 10 bytes 3.4 E-4932 1.1 E+4932 Chú ý : 1. Ngôn ngữ C không có kiể u logic (boolean như Pascal) mà quan niệ m 0 là false ; Khá c 0 là true 2. Ngôn ngữ C không có kiể u chuỗi như kiể u string trong Pascal 3. Cá c kiể u đồng nhấ t: int = short int = short = signed int = signed short int long int = long signed long int = long unsigned int = unsigned = unsigned short = unsigned short int unsigned long int = unsigned long Kỹ thuật lập trì nh 14 I.3. Biế n I.3.1. Tê n biế n : Tê n biế n là một chuỗi ký tự bắ t đầ u bằ ng ký tự chữ, ký tự kế tiế p là ký tự chữ (dấ u gạ ch dưới _ đ ượ c xem là ký tự chữ ) hoặ c số và khô ng đ ược trùng vớic từ khóa của C. Chú ý : - Ngôn ngữ C phâ n biệ t chữ thường với chữ hoa nê n biế n chữ thường với chữ hoa là khá c nhau. Ví dụ : Bien_1 _bien2 là hợp lệ bi&en 2a a b là không hợp lệ - Ngôn ngữ C chỉ phâ n biệ t hai tê n hợp lệ với nhau bằ ng n ký tự đầ u tiê n của chúng. Thông thường n=8, nhưng hiệ n nay nhiề u chương trì nh dịch cho phép n=32, như Turbo C cho phép thay đổi số ký tự phâ n biệ t từ 8-32) Ví dụ :Hai biến sau bị xem là cùng tê n bien_ten_dai_hon_32_ky_tu_dau_tien_1 bien_ten_dai_hon_32_ky_tu_dau_tien_2 I.3.2. Khai báo biế n Các biến phải được khai bá o trước khi sử dụng nhằ m giúp cho chương trì nh dịch có thể xử lý chúng. Khai bá o biế n có dạ ng : Kiể udữliệ u tê nbiế n1 [,tenbiế n2 .] ; Ví dụ: int a,b,c; float x,y,delta; char c; * Khai bá o và khởi tạ o biế n : Kiể u dữ liệ u tê nbiế n = giá trị ; I.3.3. Hàm nhập dữ liệ u chuẩn a) Hàm scanf() Cú pháp : scanf(chuỗi-địnhdạ ng,điạ chỉ thamsố 1, điạ chỉ thamsố2, .) - Chuỗi-địnhdạ ng của scanf() gồm có ba loạ i ký tự : + Chuỗi điề u khiể n + Ký tự trắ ng + Ký tự khá c trắ ng ! Chuỗi điề u khiể n có dạ ng : %[width][h/l] type Kỹ thuật lập trì nh 15 Với type: xá c định kiể u của biế n địa chỉ tham số sẽ nhậ n giá trị nhậ p và o Type ý nghĩ a d,i Số nguyê n cơ số 10 (int) o Số nguyê n cơ số 8 (int) u Số nguyê n cơ số 10 không dấ u (unsigned) x Số nguyê n cơ số 16 (int) f,e Số thực (float) c Ký tự (char) s Chuỗi ký tự p Con trỏ (pointer) lf Số thực (double) Lf Số thực (long double) Width : xá c định số ký tự tối đa sẽ nhậ n và o cho vùng đó. Hà m scanf() chỉ nhậ n cho đủ width ký tự hoặ c cho đế n khi gặ p ký tự trắ ng đầ u tiê n. Nế u chuỗi nhậ p và o nhiề u hơn thì phầ n còn lạ i sẽ dành lạ i cho lầ n gọi scanf() kế tiế p. Ví dụ 1 : scanf(%3s,str); Nế u nhậ p chuỗi ABCDEFG thì scanf() sẽ nhậ n tối đa 3 ký tự cấ t và o mả ng str, còn DEFG sẽ được lấ y nế u sau đó có lầ n gọi sanf(%s,str) khá c. Ví dụ 2 : unsigned long money; scanf(%lu,&money); Lưu ý : Nế u scanf(%ul, &money) thì giá trị nhậ p và o sẽ không được lưu trữ trong biế n money, nhưng chương trì nh dịch không bá o lỗi. Ví dụ 3 : Nhậ p và o tê n và bị giới hạ n trong khoả ng [A-Z,a-z] char name[20]; printf(Name : ) ; scanf(%[A-Za-z],&name); Trong trường hợp nà y, nế u ta gõ sai dạ ng thì name = ! Ký tự trắ ng: nế u có trong chuỗi-dạ ng sẽ yê u cầ u scanf() bỏ qua một hay nhiề u ký tự trắ ng trong chuỗi nhậ p và o. Ký tự trắ ng là ký tự khoả ng trắ ng ( ), tab (\t), xuố ng hà ng (\n). Một ký tự trắ ng trong chuỗi-địnhdạ ng sẽ được hiể u là chờ nhậ p đế n ký tự khá c trắ ng tiế p theo. Kỹ thuật lập trì nh 16 Ví dụ 4: scanf(%d ,&num); Hà m scanf() cho ta nhậ p một ký tự khá c trắ ng nữa thì mới thoát ra. Ký tự đó sẽ nằ m trong vùng đệ m và sẽ được lấ y bởi hà m scanf() hoặ c gets() tiế p theo. ! Ký tự khá c trắ ng: nế u có trong chuỗi-địnhdạ ng sẽ khiế n cho scanf() nhậ n và o đúng ký tự như thế . Ví dụ 5 : scanf(%d/%d/%d,&d,&m,&y); Hà m scanf() chờ nhậ n một số nguyê n, cấ t và o d, kế đế n là dấ u /, bỏ dấu nà y đi và chờ nhậ n số nguyê n kế tiế p để cấ t và o m. Nế u không gặ p dấ u / kế tiế p số nguyê n thì scanf() chấ m dứt. Chú ý : Hà m scanf() đòi hỏi cá c tham số phả i là cá c địa chỉ của cá c biến hoặ c là một con trỏ. * Toá n tử địa chỉ & : Lấ y địa chỉ của một biế n Ví dụ 6 : int n; biế n n &n; địa chỉ của n printf(trị = %d, địa chỉ = %d,n,&n); b) Hàm getch(): Hà m getch() dùng để nhậ n một ký tự do ta nhậ p trê n bà n phí m mà không cầ n gõ Enter với cú phá p : ch = getch(); Không hiệ n ký tự nhậ p trê n mà n hì nh ch = getche(); Hiệ n ký tự nhậ p trê n mà n hì nh Với ch là biế n kiể u char. Ví dụ 7 : void main() { char ch; printf(Go vao ky tu bat ky : ); ch = getche(); printf(\n Ban vua go %c,ch); getch(); } Ví dụ 8 : Bạ n nhậ p và o 1 chữ cá i. Nế u chữ cá i nhậ p và o là 'd' thì chương trì nh sẽ kế t thúc, ngược lạ i chương trì nh sẽ báo lỗi và bắ t nhậ p lạ i. #include <stdio.h> #include <conio.h> void main() { char ch; [...]... c u # include < string.h> # include < stdio.h> void main () { char cau[80], từ[7], *ptr; printf(Nhậ p c u :); gets (c u); printf(Nhậ p từ :); gets(từ); ptr = strstr (c u, từ); if (ptr == NULL) printf(Không c từ); else printf (c từ); } II C c cấu tr c điều khiển trong C: Ngôn ngữ Cngôn ngữ lậ p trì nh c p cao c c u tr c, gồm: c u tr c tuầ n tự, chọn, và lặ p II.1 C u tr c tuần tự (Sequence)... 0.0 I.6 Chuỗi I.6.1 Định nghĩ a :Chuỗi là một mả ng mà c c phầ n tử c a nó c kiể u ký tự Khai bá o một chuỗi ký tự chứa tối đa 49 ký tự char chuỗi[50]; * Lưu ý : Tấ t c c c chuỗi đề u đư c kế t th c bằ ng ký tự NULL (\0) Do đó, nế u chuỗi dà i 50 thì ta chỉ c thể chứa tối đa 49 ký tự I.6.2 Khởi động trị: char chuỗi[ ] = {A, N, H, \0}; char chuỗi[ ] = "ANH"; I.6.3 Nhập / xuất chuỗi: a Nhập chuỗi:... case '9': k=ch-'0'; break; case 'A': case 'B': case 'C' : case 'D': case 'E': case 'F':k=ch-'A'+10; break; case 'a': case 'b': case 'c' : case 'd': case 'e': case 'f': k= ch-'a'+10; break; default: k=0; } printf ("\nSo thap phan cua ky tu hexa %c la %d ",ch,k); getch(); } Ví dụ : Viế t chương trì nh tạ o 1 má y tí nh c 4 phép toá n + , - , * , / #include #include void main() { 36... nh switch - Muốn ngắ t sự tuầ n tự trê n thì phả i dùng lệ nh break Ví dụ: Nhậ p 1 ký tự số dạ ng hex đổi ra số thậ p phâ n #include #include void main() Kỹ thuậ t lậ p trì nh { unsignedchar ch; int k; clrscr(); printf("Nhap 1 ky tu so hex : "); ch=getche(); switch (ch) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': k=ch-'0';... việ c chuyê n chở là miể n phí , nế u không phí chuyê n chở thường đư c tí nh bằ ng 1% tổng trị giá hà ng Viế t chương trì nh nhậ p và o N, P In ra c c chi tiế t Tổng trị giá hà ng, tiề n chuyê n chở, và tổng số tiề n phả i trả 20 Một sinh viê n dự tuyể n c c c chi tiế t sau : họ tê n, điể m L1 c a lầ n 1, điể m L2 c a lầ n 2, điể m thi cuối kỳ CK Viế t chương trì nh xá c định xem một sinh viê n c ... strcat(destination, c) ; // destination = "Turbo C+ +" - strncat(dest, src, n): nối nhiề u nhấ t là n ký tự c a src và o cuối chuỗi dest, sau đó thê m ký tự null và o cuối chuỗi kế t quả Ví dụ: char destination[25]; char *source = " States"; strcpy(destination, "United"); strncat(destination, source, 6); printf("%s\n", destination); // destination = "United State" - char * strchr(s, ch): trả về địa chỉ c a ký tự ch... true false true true false true true false false false dụ 1: Xét ký tự c có phả i là ký số hay không? char c; if (c >= 0 && c =a) and (ch< =z)) or ((ch> =A) and (ch< =Z)) printf( %c là chu cai \n,ch); dụ 3: int a=10, b=5, c= 0; a && b 1 a && c 0 a| |c 1 Ví dụ 4: int a=10, b=5; 24 Kỹ thuậ t lậ p trì nh int i=2, j=0; (a>b)... lậ p trì nh printf("\nBan nhap vao 1 chu cai tu a den e: "); while ((ch=getche()) != 'd') { printf("\nXin loi, %c la sai roi",ch); printf("\n Thu lai lan nua \n"); } } Lưu ý: Hà m getch() c n cho phép ta nhậ p và o 1 ký tự mở rộng như c c phí m F1, F2, , c c phí m di chuyể n cursor C c phí m nà y luôn c 2 bytes: byte thứ nhấ t bằ ng 0, c n byte 2 là m scancode c a phí m đó Để nhậ n biế t ta đ gõ... số Vì : scanf(%d, &n); // ta nhậ p số 5 gets (chuỗi); // l c nà y chuỗi = (chuỗi rỗng) I.6.4 Hàm chuyể n đổi số sang chuỗi và ngư c lại sốint = atoi (chuỗisố) // chuyể n chuỗi số sang số nguyê n sốf = atof (chuỗisố) // chuyể n chuỗi số sang số th c * Hai hà m nà y nằ m trong < stdlib h > I.6.5 C c hàm về chuỗi: (# include < string h> ) - int strlen(S) : trả về chiề u dà i chuỗi S - int strcmp(S1,... Viế t chương trì nh kiể m tra 1 bit bấ t kì c a số bằ ng 0 hay 1 10 Viế t chương trì nh tí nh kế t quả c a một số sau khi dịch phả i hoặ c dịch trá i n lầ n 11 Đế m số lầ n xuấ t hiệ n c a từ một trong 1 c u 12 Thay thế 1 từ trong 1 c u bằ ng 1 từ khá c 13 Nhậ p họ tê n, tá ch hoten ra là m 2 phầ n họ và tê n riê ng 14 Viế t chương trì nh đổi c c ký tự đầ u c a c c từ ra chữ in, c c ký tự c n lạ . nh chí nh cho má y vi tí nh trê n thế giới. * Đ c điể m ngôn ngữ C Ngôn ngữ C có những đặ c điể m c bả n sau : - Tí nh c đọng (compact) : Ngôn ngữ C chỉ. thí ch (compactable) : Ngôn ngữ C có bộ lệ nh tiề n xử lý và c c thư việ n chuẩ n là m cho c c chương trì nh viế t bằ ng ngôn ngữ C có thể tương thí ch

Ngày đăng: 29/09/2013, 05:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan