Tại sao dùng trong c
Trong bà học này, Lập rình không khó sẽ hướng ẫn các bạn các kến hức căn bản nhấ về hàm rong C (ên gọ khác là chương rình con). Mình sẽ đưa ra lý o ạ sao nên ùng hàm, cách gọ hàm ở rong ngôn ngữ C và cách hoạ động của mộ chương rình có sử ụng các hàm con… Và ấ nhên rong khóa học c bá đạo này, các bà ập và ví ụ là không hể hếu rong mỗ bà học.
Show NỘI DUNG BÀI VIẾT Vo hướng ẫn hàm rong CDướ đây là vo hướng ẫn căn bản về hàm o ngườ ùng định nghĩa ở rong ngôn ngữ C. Nó là hàm ngườ ùng định nghĩa là để phân bệ vớ các hàm có sẵn rong các hư vện như bà học rước chúng a vừa ìm hểu. Các bạn nên ếp ục đọc bà vế để có cá nhìn sâu sắc hơn về hàm rong C. Hàm rong C là gì?Đặ vấn đề: Gả sử bạn muốn xây ựng mộ công y (mộ chương rình máy ính bỏ ú). Công y của bạn được hành lập vớ 4 mục êu chính như sau: ính ổng, hệu, ích, hương của 2 số nguyên nhập ừ bàn phím. Nếu công y của bạn chỉ có mộ hành vên và hành vên đó phả ự làm và quản lý hế ấ cả 4 công vệc rên (co ấ cả rong hàm Gả pháp: Thuê 4 ông nhân vên về và rả lương cho họ, mỗ ông (hàm con) chỉ làm mộ vệc uy nhấ. Kh đó, công vệc của sếp (là hàm Vậy hì hàm rong C là gì? Hàm chính là các ông nhân vên rong vấn đề phía rên. Trong lập rình, hàm là các khố co nhỏ chỉ hực hện mộ chức năng nhấ định của bà oán lớn. Bạn có hể hình ung cá khung của công y phía rên sau kh áp ụng gả pháp a được như sau: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #nclu &l;so.h&g;
n a(n a, n b){ // hàm con này là nhân vên làm công vệc phép cộng }
n subrac (n a, n b){ // hàm con này là nhân vên làm công vệc phép rừ }
n muply (n a, n b){ // hàm con này là nhân vên làm công vệc phép nhân }
floa v (n a, n b){ // hàm con này là nhân vên làm công vệc phép cha }
n man(){ // hàm này là ông sếp } Ưu đểm kh ùng chương rình conSau đây là mộ số ưu đểm nổ bậ của sử ụng chương rình con (hàm) mà mình có hể lệ kê, nhưng có 1 đều chắc chắn rằng: Hãy cố gắng hực hành vế co của bạn sử ụng hàm nếu có hể nhé. Cách hoạ động của hàm rong CHình ảnh ướ đây cho bạn hấy cách hoạ động của hàm (chương rình con) ở rong ngôn ngữ C. Kh mộ lờ gọ hàm được hực h hì: Chương rình máy ính bỏ ú đơn gảnSau đây mình sẽ lấy mộ ví ụ sử ụng hàm rong C (chương rình con) để xây ựng ứng ụng máy ính bỏ ú đơn gản hực hện 4 chức năng cơ bản là cộng, rừ, nhân, cha. Các bạn xm gả hích ở rong co cùng vớ xm vo để hểu hơn nhé. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 #nclu &l;so.h&g;
/* Cách kha báo hàm
&l;kểu ữ lệu&g; &l;ên hàm&g; (&l;các ham số&g;){ // hân hàm rurn &l;valu&g;; // valu phả cùng kểu &l;kểu ữ lệu&g; } */ // Calcula sum of wo numbr // a: frs numbr // b: scon numbr n a(n a, n b){ n sum = a + b; rurn sum; // lệnh rurn rả về gá rị có cùng kểu ữ lệu vớ kểu ữ lệu của hàm }
// Hàm ính hệu của a - b n subrac(n a, n b){ rurn a - b; }
// Hàm ính ích a * b n muply(n a, n b){ rurn a * b; }
// Hàm ính hương của a / b // Lưu ý b cần != 0 // Bạn phả ép kểu ử hoặc mẫu để hu được kế quả là số hực nhé floa v(n a, n b){ rurn (floa) a / b; }
n man(){ n a = 3, b = 4; // Sử ụng ên hàm để gọ nó, // ruyền các ham số đúng ho kểu của hàm yêu cầu prnf("\n% + % = %", a, b, a(a, b)); prnf("\n% - % = %", a, b, subrac(a, b)); prnf("\n% * % = %", a, b, muply(a, b)); f(b != 0){ prnf("\n% / % = %f", a, b, v(a, b)); } } Kế quả chạy chương rình: 1 2 3 4 5 6 7 PS G:\c_courcs\ay_27&g; g++ .\Calculaor.cpp -o .\Calculaor PS G:\c_courcs\ay_27&g; .\Calculaor.x
3 + 4 = 7 3 - 4 = -1 3 * 4 = 12 3 / 4 = 0.750000 Các bà vế sau sẽ nó rõ hơn về các loạ hàm và rấ nhều bà ập hực hành, bạn hãy ếp ục ho õ để rang bị cho mình kến hức đầy đủ về hàm rong C nhé! Các loạ hàm rong CSau đây, mình sẽ lấy 1 ví ụ ham khảo ừ à lệu số [2] để hể hện cho các bạn hấy có 4 loạ hàm rong C. Chúng a sẽ ùng 4 cách vế hàm khác nhau để gả quyế cùng 1 bà oán: “Kểm ra 1 số ngườ ùng nhập ừ bàn phím có phả là số nguyên ố không”. Sau cùng, chúng a sẽ đ đến những kế luận! 1. Hàm không có ham số, không có gá rị rả về1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 #nclu &l;so.h&g; vo chckPrmNumbr(); n man() { chckPrmNumbr(); // argumn s no pass rurn 0; } // rurn yp s vo manng osn' rurn any valu vo chckPrmNumbr() { n n, , flag = 0; prnf("Enr a posv ngr: "); scanf("%",&n); for(=2; &l;= n/2; ++) { f(n% == 0) { flag = 1; } } f (flag == 1) prnf("% s no a prm numbr.", n); ls prnf("% s a prm numbr.", n); } Như bạn hấy, hàm 2. Hàm không có ham số, có rả về gá rị1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 #nclu &l;so.h&g; n gIngr(); n man() { n n, , flag = 0; // no argumn s pass n = gIngr(); for(=2; &l;=n/2; ++) { f(n%==0){ flag = 1; brak; } } f (flag == 1) prnf("% s no a prm numbr.", n); ls prnf("% s a prm numbr.", n); rurn 0; } // rurns ngr nr by h usr n gIngr() { n n; prnf("Enr a posv ngr: "); scanf("%",&n); rurn n; } Trong đoạn co rên, hàm 3. Hàm có ham số, không rả về gá rị1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 #nclu &l;so.h&g; vo chckPrmAnDsplay(n n); n man() { n n; prnf("Enr a posv ngr: "); scanf("%",&n); // n s pass o h funcon chckPrmAnDsplay(n); rurn 0; } // rurn yp s vo manng osn' rurn any valu vo chckPrmAnDsplay(n n) { n , flag = 0; for(=2; &l;= n/2; ++) { f(n% == 0){ flag = 1; brak; } } f(flag == 1) prnf("% s no a prm numbr.",n); ls prnf("% s a prm numbr.", n); } Nhận hấy, hàm 4. Hàm có ham số, có rả về gá rị1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 #nclu &l;so.h&g; n chckPrmNumbr(n n); n man() { n n, flag; prnf("Enr a posv ngr: "); scanf("%",&n); // n s pass o h chckPrmNumbr() funcon // h rurn valu s assgn o h flag varabl flag = chckPrmNumbr(n); f(flag == 1) prnf("% s no a prm numbr",n); ls prnf("% s a prm numbr",n); rurn 0; } // n s rurn from h funcon n chckPrmNumbr(n n) { n ; for(=2; &l;= n/2; ++) { f(n% == 0) rurn 1; } rurn 0; } Ở rường hợp lần này, hàm Mình chó lỡ nhận xé sau mỗ ví ụ rồ hì hô các bạn ự đền câu chố hạ gúp mình nhé. Vệc sử ụng hàm cần khéo léo để co của chúng a được “sạch sẽ”. Các bạn nhớ đọc hêm cả à lệu ham khảo nữa nhé! Tà lệu ham khảo
Facbook Twr Pnrs WhasApp Nguyễn Văn Hếu Sáng lập cộng đồng Lập Trình Không Khó vớ mong muốn gúp đỡ các bạn rẻ rên con đường rở hành những lập rình vên ương la. Tấ cả những gì ô vế ra đây chỉ đơn gản là sở hích gh lạ các kến hức mà ô ích lũy được. |