Monday, 22 September, 2014
Đăng ký học web
Home » Học Soft » Lập trình C/C++ » Cơ bản » [Bài 7] Chương trình con trong ngôn ngữ C/C++

[Bài 7] Chương trình con trong ngôn ngữ C/C++

Trong những chương trình lớn, có thể có những đoạn chương trình lặp đi lặp lại nhiều lần, để tránh rườm rà và mất thời gian khi viết chương trình; người ta thường phân chia chương trình thành nhiều module, mỗi module đảm nhận giải quyết một công việc nào đó. Các module như vậy gọi là các chương trình con. Trong bài hướng dẫn hôm nay chúng ta sẽ tìm hiểu về Chương trình con trong ngôn ngữ C/C++.

Chương trình con trong ngôn ngữ C/C++ được gọi là hàm. Hàm trong C/C++ có thể nhận (hoặc không) các đối số và có thể trả lại (hoặc không) giá trị cho chương trình gọi nó. Hàm main() là hàm đặc biệt trong ngôn ngữ C/C++ và là hàm đầu tiên được thực hiện trong chương trình.

Một số đặc trưng của hàm:

  • Có thể nằm trong hoặc nằm ngoài chương trình gọi đến hàm.
  • Có thể được từ hàm chính (main), từ hàm khác hoặc từ chính nó (đệ quy).
  • Có thể truyền tham số theo tham biến hoặc tham trị.

Có hai loại hàm: hàm chuẩn và hàm tự định nghĩa. Trong bài này chúng ta chỉ chú trọng đến cách định nghĩa hàm và cách sử dụng các hàm đó.

Ví dụ: hàm tìm số lớn nhất giữa 2 số nguyên a và b

int max( int a, int b)

{

return (a>b)?a:b;

}

Định nghĩa hàm:

Trước khi hàm có thể được sử dụng thì nó phải có một định nghĩa tương ứng với nó. Nếu các hàm không có sẵn trong thư viện, chúng ta phải định nghĩa trước.

Cú pháp:

<Tên kiểu kết quả><Tên hàm>([<kiểu tham số><tham số>][…])

{

[<Khai báo biến cục bộ và các lệnh thực hiện hàm>]

[return <Biểu thức>];

}

Trong đó:

  • Tên kiểu kết quả: là kiểu dữ liệu trả về, có thể là int, float, char… Trong trường hợp hàm không có kết quả trả về thì ta nên dùng kiểu void.
  • Tên hàm: phải hợp lệ và không trùng với biến hoặc từ khóa.
  • Kiểu tham số: là kiểu dữ liệu của tham số.
  • Tham số: là tham số dữ liệu truyền vào cho hàm. Nếu có nhiều tham số, mỗi tham số cách nhau dấu phẩy (,).

Lệnh return để trả về kết quả thông qua tên hàm. Ngoài ra lệnh return còn dùng để thoát khỏi một hàm. Khi gặp lệnh return, chương trình sẽ thoát khỏi hàm ngay lập tức và trả về giá trị của biểu thức sau return

Cú pháp:

return; //không trả về giá trị

return <biểu thức>; //trả về giá trị của biểu thức

*Chú ý: hàm có kết quả trả về, bắt buộc ta phải sử dụng câu lệnh return để trả kết quả cho hàm.

Ví dụ: hàm tính x lũy thừa  n

float luythua(float x, float n)

{

float r = 1 ;      // de luu ket qua

for (int i=1; i<=n; i++)

r *= x ;

return r;

}

Thực thi hàm:

Cú pháp:

<Tên hàm> (<Danh sách các tham số>)

Quá trình thực thi của hàm diễn ra như sau:

Nếu hàm có tham số, các tham số sẽ được gán giá trị thực tương ứng.

Chương trình sẽ thực hiện các lệnh trong thân hàm.

Khi gặp lệnh return hoặc dấu } trong thân hàm, chương trình sẽ thoát khỏi hàm để trở về chương trình gọi nó và thực hiện các lệnh tiếp theo của chương trình.

Ví dụ: chương trình tính lũy thừa của một số

code-luy-thua

 

Kết quả khi x=2 và n=3:

luy-thua

Chúc cán bạn thành công!!!

----------------------------------------------------------------------------------------------------------------------------------------------------------
Nếu bạn thấy bài viết hữu ích, hãy nhấn +1 và các liên kết chia sẻ để website ngày càng phát triển hơn. Xin cám ơn bạn!

Leave a Reply

Your email address will not be published. Required fields are marked *

*


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">