Ktl-icon-tai-lieu

hàm trong lập trình c

Được đăng lên bởi Nguyễn Thị Cẩm Tuyên
Số trang: 22 trang   |   Lượt xem: 1428 lần   |   Lượt tải: 1 lần
Bài 5: Hàm và thư viện

1

EE3490: Kỹ thuật lập trình – HK1 2013/2014
TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội

Hàm
(functions)

2

EE3490: Kỹ thuật lập trình – HK1 2013/2014
TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội

Khái niệm
Hàm là một khối các câu lệnh thực hiện một nhiệm vụ
nhất định, và có thể được gọi khi cần
Mỗi hàm có một tên (các hàm trong C không được trùng
tên nhau), một số tham số, và một giá trị trả về
Sử dụng hàm giúp:








Chia nhỏ chương trình thành nhiều bài toán con
Sử dụng lại trong một hoặc nhiều chương trình

Cách khai báo:





<kiểu trả về> <tên hàm>(<danh sách các tham số>) {
Khai báo các biến dùng cho hàm
Các câu lệnh của hàm
}

Câu lệnh return dùng để thoát khỏi hàm và trả kết quả


3

EE3490: Kỹ thuật lập trình – HK1 2013/2014
TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội

Ví dụ
Hàm tính tổng hai số





double sum(double x, double y) {
double z = x+y;
return z;
}
int main() {
double x = 10, y = sum(2,3);
printf("x + y = %g", sum(x,y));
return 0;
}

Các tham số và các biến nội bộ chỉ giới hạn trong phạm
vi của hàm



4

EE3490: Kỹ thuật lập trình – HK1 2013/2014
TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội

Phạm vi của biến, hằng
Biến toàn cục: được khai báo ở ngoài các hàm, có phạm vi trong
toàn chương trình và tồn tại trong suốt quá trình chạy
Biến địa phương: được khai báo ở trong một hàm hoặc một khối
lệnh, chỉ có phạm vi trong hàm/khối đó, và bị huỷ sau khi kết thúc
chạy hàm/khối đó






Khai báo biến địa phương sẽ “che” mất biến cùng tên khác có phạm vi rộng hơn



Trong C, biến địa phương phải được khai báo ở đầu hàm hoặc khối lệnh

Ví dụ biến địa phương của hàm:





5

int x = 10, y = 20;
int sum() {
int z = x+y;
return z;
}
int main() {
int x = 1, y = 2;
int z = sum();
return 0;
}

/* phải khai báo trước hàm sum() */

/* trả về: 10+20 */

EE3490: Kỹ thuật lập trình – HK1 2013/2014
TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội

Biến trong khối lệnh
Trong một khối lệnh { … } ta có thể khai thêm biến, biến đó chỉ tồn tại
từ khi chương trình chạy vào tới khi thoát khỏi khối lệnh đó
Ví dụ:






6

int x = 1, y = 2;
int sum(int x, int y) {
return x+y;
}
int a = 1000, b = 2000;
int main() {
int x = 10, y = 20;
{
int x = 100, y = 200;
x+y;
}
x+y;
sum(a,b);
return 0;
}
EE3490: Kỹ thuật lập trình – HK1 2013/2014
TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội

Biến trong khối lệnh: vòng lặp
Chỉ có phạm vi trong một lần chạy của vòng lặp, mỗi
lần lặp sẽ tạo ra biến mới và khởi tạo lại
Ví dụ:






7

int x = 20;
for (...
Bài 5: Hàm thư viện
1
EE3490: Kỹ thuật lập trình HK1 2013/2014
TS. Đào Trung Kiên ĐH Bách khoa Hà Nội
hàm trong lập trình c - Trang 2
Để xem tài liệu đầy đủ. Xin vui lòng
hàm trong lập trình c - Người đăng: Nguyễn Thị Cẩm Tuyên
5 Tài liệu rất hay! Được đăng lên bởi - 1 giờ trước Đúng là cái mình đang tìm. Rất hay và bổ ích. Cảm ơn bạn!
22 Vietnamese
hàm trong lập trình c 9 10 942