Lập trình căn bản - Trường CĐN Công nghiệp Hà Nội - 10

Lưu ý:

- Hàm phải được khai báo và định nghĩa trước khi sử dụng và thường đặt ở trên hàm chính (hàm main).

int Tong(int a, int b)

{

return a + b;

}

void main()

{

int a = 2912, b = 1706;

int sum = Tong(a, b); // Loi goi ham

Có thể bạn quan tâm!

Xem toàn bộ 110 trang tài liệu này.

}

- Thông thường, trước hàm main ta chỉ xác định tên hàm, các tham số và giá trị trả về của hàm để thông báo cho các hàm bên dưới biết cách sử dụng của nó còn phần định nghĩa hàm sẽ được đưa xuống dưới cùng. Phần ở trên này được gọi là nguyên mẫu hàm (function prototype). Nguyên mẫu hàm chính là tiêu đề hàm được kết thúc bằng dấu chấm phẩy.

int Tong(int a, int b); // prototype ham Tong


void main()

{

int a = 2912, b = 1706;

int sum = Tong(a, b); // Loi goi ham

}


int Tong(int a, int b) // Mo ta ham Tong

{

return a + b;

}

- Trên thực tế, nguyên mẫu hàm không cần thiết phải giống tuyệt đối tiêu đề hàm. Tên tham số có thể khác hoặc bỏ luôn miễn là cùng kiểu. Tuy nhiên, không nên để chúng khác nhau vì như vậy sẽ gây rối cho chương trình.

Ví dụ sau cho thấy có thể bỏ hẳn tên tham số: int Tong(int, int); // prototype ham Tong

c. Phạm vi của biến và hàm

Là phạm vi hiệu quả của biến hoặc hàm. Phạm vi này bao gồm bản thân khối đó và các khối con bên trong nó. Các khối cha hoặc các khối ngang hàng sẽ không thuộc phạm vi này.

Ví dụ 4:


Nhận xét Các hình chữ nhật bao quanh tạo thành một khối Mộtkhối có thể 1

Nhận xét:

- Các hình chữ nhật bao quanh tạo thành một khối. Mộtkhối có thể chứa khối con trong nó.

- Biến khai báo trong khối nào thì chỉ có tác dụng trong khối đó và các khối con của nó, không có tác dụng với khối cùng cấp.

- Biến khai báo trong khối lớn nhất (chứa tất cả các khốikhác) là biến toàn cục.

- Biến khai báo trong các hàm (hoặc khối) là cục bộ, sẽ bị mất khi kết thúc hàm (hoặc khối).

- Hàm cùng một khối (cùng cấp) có thể gọi lẫn nhau nhưng phải tuân theo thứ tự khai báo.

- Các biến cục bộ nên đặt khác tên với các biến ở khối cha để tránh nhầm lẫn. Trong trường hợp đặt trùng tên thì biến được ưu tiên là biến cục bộ của khối con.

Giải thích chương trình trên: a là biến toàn cục, có thể sử dụng ở bất cứ đâu. a1, a2, a21, a3 là các biến cục bộ do được khai báo trong hàm (hoặc khối). a1 chỉ có tác dụng trong hàm Ham1; a2 có tác dụng trong thủ tục Ham2 và khối trong Ham2; a21 chỉ có tác dụng trong khối mà nó khai báo; a2 chỉ có tác dụng trong hàm main.

Hàm main có thể gọi Ham1, Ham2. Hàm 2 có thể gọi Ham1.

d. Các ví dụ về hàm

Ví dụ 5:

Chương trình

Kết quả in ra màn hình Minh hoa ve ham Giải thích chương trình  Dòng 8 đến dòng 2

Kết quả in ra màn hình

*****************

* Minh hoa ve ham *

*****************

_

Giải thích chương trình

Dòng 8 đến dòng 14: định nghĩa hàm line, hàm này không trả về giá trị, thực hiện công việc in ra 19 dấu sao.

Dòng 5: khai báo prototype, sau tên hàm phải có dấu chầm phẩy

Trong hàm line có sử dụng biến i, biến i là biến cục bộ chỉ sử dụng được trong phạm vi hàm line.

Dòng 18 và 20: gọi thực hiện hàm line.

Trình tự thực hiện chương trình

Lưu ý Không có dấu chấm phẩy sau tên hàm phải có cặp dấu ngoặc sau tên hàm 3

Lưu ý: Không có dấu chấm phẩy sau tên hàm, phải có cặp dấu ngoặc ( ) sau tên hàm nếu

hàm không có tham số truyền vào. Phải có dấu chấm phẩy sau tên hàm khai báo prototype. Nên khai báo prototype cho dù hàm được gọi nằm trước hay sau câu lệnh gọi nó.

Ví dụ 6:

Chương trình

Kết quả in ra màn hình 2 mu 2 4 2 mu 3 8 Giải thích chương trình  Hàm power có hai 4

Kết quả in ra màn hình

2 mu 2 = 4.

2 mu 3 = 8.

_

Giải thích chương trình

Hàm power có hai tham số truyền vào là ix, in có kiểu int và kiểu trả về cũng có kiểu int.

Dòng 13: return ip: trả về giá trị sau khi tính toán

Dòng 18: đối mục 2 và 3 có kiểu trả về là int sau khi thực hiện gọi power.

Hai tham số ix, in của hàm power là dạng truyền tham trị.

Trình tự thực hiện chương trình

Lưu ý Quy tắc đặt tên hàm giống tên biến hằng… Mỗi đối số cách nhau dấu 5

Lưu ý: Quy tắc đặt tên hàm giống tên biến, hằng… Mỗi đối số cách nhau = dấu phẩy kèm

theo kiểu dữ liệu tương ứng.

Ví dụ 7:

Chương trình


Kết quả in ra màn hình Nhap vao so phut 185 03 05 Giải thích chương trình Hàm time có 6

Kết quả in ra màn hình Nhap vao so phut 185 03 05 Giải thích chương trình Hàm time có 7

Kết quả in ra màn hình

Nhap vao so phut: 185 03:05

_

Giải thích chương trình

Hàm time có hai tham số truyền vào là ix, in có kiểu int. 2 tham số này có toán tử địa chỉ & đi trước cho biết 2 tham số này là dạng truyền tham biến.

Trình tự thực hiện chương trình


2 Tham số dạng tham biến và tham trị Ví dụ 8 Chương trình void thamtri int ix int iy 8


2. Tham số dạng tham biến và tham trị

Ví dụ 8:

Chương trình

void thamtri(int ix, int iy)

{

ix += 1; //cong ix them 1

..... Xem trang tiếp theo?
⇦ Trang trước - Trang tiếp theo ⇨

Ngày đăng: 27/12/2023