
CHƯƠNG VI
HÀM VÀ C U TRÚC CHẤ ƯƠNG TRÌNH
I. Hàm
1. Quy t c xây d ng m t hàm:ắ ự ộ
Hàm có th xem là m t ể ộ đơn v ịđc l p c a ộ ậ ủ
chương trình. Các hàm có vai trò ngang nhau, vì
v y không cho phép xây d ng m t hàm bên trong ậ ự ộ
m t hàm khác.ộ
Dòng đu tiên (c a m t hàm) ch a các thông tin v ầ ủ ộ ứ ề
hàm:
-Ki u giá tr c a hàm (n u hàm có giá tr )ể ị ủ ế ị
-Tên hàm
-Danh sách các đi s (n u có)ố ố ế

Các dòng ti p theo dùng ếđ khai báo ki u giá ể ể
tr c a ị ủ đi s .Và b t bu c ph i khai báo ki u ố ố ắ ộ ả ể
giá tr cho t t c các ị ấ ả đi s .ố ố
Tiép theo là thân hàm. Thân hàm là n i dung ộ
chính c a hàm nó b t ủ ắ đu b ng d u { và k t ầ ằ ấ ế
thúc }
Trong thân hàm có th dùng 1 ho c nhi u l nh ể ặ ề ệ
return ho c có th không dùng. Và có th ặ ể ể đt ặ
chúng b t k ch nào n u th y thích h p.ở ấ ỳ ỗ ế ấ ợ
Cú pháp chung c a l nh returnủ ệ
return ([Bi u th c]);ể ứ
Giá tr c a bi u th c trong ngo c s ị ủ ể ứ ặ ẽ đưc ợ
gán cho hàm.

2. Quy t c ho t ắ ạ đng c a hàmộ ủ
Cách g i hàm:ọ
tên_hàm([Danh sách tham s th c]);ố ự
Chú ý:
-S tham s th c ph i b ng v i s tham ố ố ự ả ằ ớ ố
s hình th c (ố ứ đi) và m i tham s th c ph i ố ỗ ố ự ả
có cùng ki u v i giá tr nhể ớ ị ư ki u giá tr c a ể ị ủ
đi tố ương ng c a nó.ứ ủ
- V nguyên t c m i hàm c n ề ắ ọ ầ đưc khái ợ
báo trưc khi s d ng nó. Nó hoàn toàn ớ ử ụ
gi ng v i vi c khai báo m t bi n.ố ớ ệ ộ ế

Ví d :ụ
Vi t chế ương trình tìm s l n nh t và nh nh t ố ớ ấ ỏ ấ
c a t ng c t trong ma tr n, có s d ng hàm tìm ủ ừ ộ ậ ử ụ
max, tìm min.
#include "stdio.h"
int max(a,b)
int a,b;
{
int m;
m=a>b?a:b;
return (m);
}

int min(a,b)
int a,b;
{
int m;
m=a<b?a:b;
return (m);
}
main()
{
int s,k,i,j,ma,mi,max(),min(),temp;
int a[3][3];
clrscr();