Khai báo hàm (tiếp) Kiểu dữ liệu trả về của hàm:. Kiểu dữ liệu trả về của hàm:[r]
(1)1
1 TIN HỌC ĐẠI CƯƠNG
TIN HỌC ĐẠI CƯƠNG
PHẦN 2: LẬP TRÌNH BẰNG NGƠN NGỮ C
PHẦN 2: LẬP TRÌNH BẰNG NGÔN NGỮ C
BÀI 5: HÀM BÀI 5: HÀM
VI N Ệ VI N Ệ
CÔNG NGH Ệ
CÔNG NGH Ệ THÔNG TIN
THÔNG TIN
SCHOOL OF
SCHOOL OF
INFORMATION COMMUNICATION TECHNOLOGY
INFORMATION COMMUNICATION TECHNOLOGY
(2)BÀI 5:
BÀI 5: HÀMHÀM
5.1 Khái niệm hàm 5.1 Khái niệm hàm
5.2 Khai báo sử dụng hàm 5.2 Khai báo sử dụng hàm
5.3 Phạm vi biến 5.3 Phạm vi biến
5.4 Nguyên mẫu hàm 5.4 Nguyên mẫu hàm
(3)3
3
5.1 Khái niệm hàm
5.1 Khái niệm hàm Cịn gọi chương trình con Cịn gọi chương trình con
Những đoạn chương trình lặp lặp lại Những đoạn chương trình lặp lặp lại
nhiều lần chỗ khác nhau: nhiều lần chỗ khác nhau:
Viết thành Viết thành hàmhàm để cần cần gọi để cần cần gọi
chứ khơng phải viết lại tồn
chứ khơng phải viết lại tồn
Ví dụ:Ví dụ:
Các hàm tốn học:
Các hàm toán học: sin(x), pow(x,y), sqrt(x),sin(x), pow(x,y), sqrt(x), Các hàm người dùng viết
(4)5.1 Khái niệm hàm
5.1 Khái niệm hàm
Giải tốn lớn chương trình
Giải tốn lớn chương trình
ta lớn dài
ta lớn dài Chia thành Chia thành công công
việc nhỏ hơn
việc nhỏ hơn viết thành hàm viết thành hàm Dễ Dễ
viết, kiểm tra sửa lỗi
viết, kiểm tra sửa lỗi
Việc chia nhỏ chương trình thành
Việc chia nhỏ chương trình thành
chương trình đảm nhận cơng việc
chương trình đảm nhận cơng việc
nhỏ khác tư tưởng cho
nhỏ khác tư tưởng cho
phương pháp lập trình cấu trúc (
phương pháp lập trình cấu trúc (structured structured programming
(5)5
5 BÀI 5:
BÀI 5: HÀMHÀM
5.1 Khái niệm hàm 5.1 Khái niệm hàm
5.2 Khai báo sử dụng hàm 5.2 Khai báo sử dụng hàm
5.3 Phạm vi biến 5.3 Phạm vi biến
5.4 Nguyên mẫu hàm 5.4 Nguyên mẫu hàm
(6)5.2.1 Khai báo hàm
5.2.1 Khai báo hàm Cú pháp:
Cú pháp:
[kieu_gia_tri_tra_ve]
[kieu_gia_tri_tra_ve]
<ten_ham>([danh_sach_tham_so,…])
<ten_ham>([danh_sach_tham_so,…])
{
{
//Than ham` bao gom:
//Than ham` bao gom:
//Cac khai bao
//Cac khai bao
//Cac cau lenh
//Cac cau lenh
}
(7)7
7
5.2.1 Khai báo hàm (tiếp)
5.2.1 Khai báo hàm (tiếp)
Ví dụ:
Ví dụ:
long
long giai_thua(int a) giai_thua(int a) {
{
long ket_qualong ket_qua;;
int i;int i;
ket_qua = 1;ket_qua = 1;
for(i = 1;i<=a;i++)for(i = 1;i<=a;i++)
ket_qua = ket_qua * i;ket_qua = ket_qua * i;
if(a < 0) ket_qua = -1;if(a < 0) ket_qua = -1;
return ket_qua;return ket_qua; }
}
Dong dau ham Dong dau ham Cac khai bao Cac khai bao
(8)5.2.1 Khai báo hàm (tiếp)
5.2.1 Khai báo hàm (tiếp) Kiểu liệu trả hàm:
Kiểu liệu trả hàm:
Kiểu liệu giá trị tính tốn mà hàm trả Kiểu liệu giá trị tính tốn mà hàm trả
về sau thực
về sau thực
Hàm có giá trị trả khơng có giá Hàm có giá trị trả khơng có giá
trị trả
trị trả
Nếu có giá trị trả về, thân hàm có
Nếu có giá trị trả về, thân hàm có
lệnh
lệnh returnreturn
Nếu khơng có giá trị trả cần khai báo cho hàm
Nếu khơng có giá trị trả cần khai báo cho hàm
đó có kiểu trả
(9)9
9
5.2.1 Khai báo hàm (tiếp)
5.2.1 Khai báo hàm (tiếp) Tên hàm
Tên hàm
Có th là b t kì m t đ nh danh h p l nào.Có th là b t kì m t đ nh danh h p l nào.ểể ấấ ộ ịộ ị ợ ệợ ệ ThThườường mang nghĩa g i ý ch c năng công ng mang nghĩa g i ý ch c năng công ợợ ứứ
vi c mà hàm th c hi n.ệ ự ệ
vi c mà hàm th c hi n.ệ ự ệ
Ví d : M t hàm có ch c năng tính và tr v bình ụ ộ ứ ả ề
Ví d : M t hàm có ch c năng tính và tr v bình ụ ộ ứ ả ề
phương c a m t s th c ủ ộ ố ự
phương c a m t s th c ủ ộ ố ự xx thì nên có tên là thì nên có tên là
binh_phuong binh_phuong..
(10)5.2.1 Khai báo hàm (tiếp)
5.2.1 Khai báo hàm (tiếp)
Tham số hàm:
Tham số hàm:
Các thông tin cần cho hoạt động hàm Các thông tin cần cho hoạt động hàm thơng tin, kết tính tốn hàm trả lại
thơng tin, kết tính tốn hàm trả lại
Tham s ch a d li u vào cung c p cho hàmố ứ ữ ệ ấ
Tham s ch a d li u vào cung c p cho hàmố ứ ữ ệ ấ
Tham s ch a d li u ra mà hàm tính tốn đố ứ ữ ệ ược
Tham s ch a d li u ra mà hàm tính tốn đố ứ ữ ệ ược
Tham s trong l i khai báo hàm đTham s trong l i khai báo hàm đốố ờờ ượược g i là tham s c g i là tham s ọọ ốố
hình th c, tham s gi đ nh c a hàm.ứ ố ả ị ủ
hình th c, tham s gi đ nh c a hàm.ứ ố ả ị ủ
C n ch ra tên c a tham s và ki u d li u c a tham s ầ ỉ ủ ố ể ữ ệ ủ ố
C n ch ra tên c a tham s và ki u d li u c a tham s ầ ỉ ủ ố ể ữ ệ ủ ố
Một hàm khơng có tham số, có nhiều Một hàm khơng có tham số, có nhiều tham số