Bài 16 Hàm
M c tiêu:
K t thúc bài h c này, b n có th :ế
Đ nh nghĩa và g i hàm
S d ng các tham s trong hàm.
Ph n I – Trong th i gian 1 gi 30 phút đ u:
16.1 Hàm
Nh chúng ta đã bi t, m t hàm m t kh i các l nh th c hi n m t tác v xác đ nh. Trongư ế
bài này, chúng ta t p trung vào cách t o và s d ng hàm.
16.1.1 Đ nh nghĩa hàm
M t hàm đ c đ nh nghĩa v i m t tên hàm, theo sau b i c p d u ngo c nh n{} bên trong ượ
ch a m t hay nhi u câu l nh. Ví d ,
argentina()
{
statement 1;
statement 2;
statement 3;
}
16.1.2 G i m t hàm
M t hàm có th đ c g i t ch ng trình chính b ng cách đ a ra tên c a hàm ượ ươ ư theo sau theo
sau b i c p d u ngo c () và m t d u ch m ph y. Ví d ,
argentina();
Bây gi , xem ch ng trình hoàn thi n. ươ
1. G i trình so n th o ch ng trình C. ươ
2. T o t p tin m i.
3. Đ a vào đo n mã l nh sau:ư
#include<stdio.h>
void main()
{
printf(“\nI am in main”);
italy();
brazil();
argentina();
}
Hàm 231
italy()
{
printf(“\nI am in italy”);
}
brazil()
{
printf(“\nI am in brazil”);
}
argentina()
{
printf(“\nI am in argentina”);
}
Đ xem k t qu , th c hi n các b c sau: ế ướ
4. L u t p tin v i tên functionI.C.ư
5. Biên d ch t p tin, functionI.C.
6. Th c thi ch ng trình, functionI.C. ươ
7. Tr v trình so n th o.
M t k t qu v k t qu th c thi c a ch ng trình trên đ c ch ra trong hình 16.1. ế ế ươ ượ K t quế
c a ch ng trình trên đ c minh h a nh hình 16.1 ươ ượ ư
Hình 16.1: K t qu c a functionI.Cế
1.2 S d ng các tham s trong hàm
Các tham s đ c s d ng đ ượ chuy n truy n thông tin đ n hàm. Các chu i đ nh d ng ế
danh sách các bi n đ c đ t bên trong c p d u ngo c () c a hàm là các tham s .ế ượ
16.2.1 Đ nh nghĩa m t hàm có tham s
M t hàm đ c đ nh nghĩa v i m t tên hàm theo sau d u ngo c m (, sau đó các tham ượ
s và cu i cùng là d u ngo c đóng ). Bên trong hàm, có th m t ho c nhi u câu l nh. Ví
d ,
calculatesum (int x, int y, int z)
{
statement 1;
statement 2;
232 L p trình c b n C ơ
statement 3;
}
Xem ch ng trình hoàn thi n sau.ươ
1. T o m t t p tin m i.
2. Nh p vào mã l nh sau:
#include<stdio.h>
void main()
{
int a, b, c, sum;
printf(“\nEnter any three numbers: ”);
scanf(“%d %d %d”, &a, &b, &c);
sum = calculatesum(a, b, c);
printf(“\nSum = %d”, sum);
}
calculatesum(int x, int y, int z)
{
int d;
d = x + y + z;
return (d);
}
3. L u t p tin v i tên functionII.C.ư
4. Biên d ch t p tin, functionII.C.
5. Th c thi ch ng trình, functionII.C. ươ
6. Tr v trình so n th o.
K t qu c a ch ng trình trên đ c minh h a nh hình 16.2ế ươ ượ ư
M t ví d c a k t qu th c thi ch ng trình đ c trình bày trong hình 16.2. ế ươ ượ
Hình 16.2: K t qu ế I c a functionII.C
Hàm 233
Ph n II – Trong th i gian 30 k ti p: ế ế
1. Vi t m t ch ng trình C nh p vào m t s và tính bình ph ng c a s đó ế ươ ươ v i s tr giúp
c ab ng cách s d ng m.
Đ th c hi n đi u này,
a. Khai báo m t hàm.
b. Nh p vào m t s .
c. Truy n s đó đ n hàm và ế hàm s tr v bình ph ng c a s đó. ươ
234 L p trình c b n C ơ
Bài t p t làm
1. Vi t m t ch ng trình C đ tính di n tích và chu vi hình tròn.ế ươ
2. Vi t m t ch ng trình in ra giai th a c a m t s nguyên.ế ươ
Hàm 235