Bài giảng Tin học đại cương - Bài 5: Hàm
lượt xem 1
download
Bài giảng trình bày khái niệm hàm; khai báo và sử dụng hàm; phạm vi biến; nguyên mẫu hàm; hệ đệ qui. Mời các bạn cùng tham khảo bài giảng "Tin học đại cương - Bài 5: Hàm" để nắm chi tiết nội dung kiến thức.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Tin học đại cương - Bài 5: Hàm
- VIỆN CÔNG NGHỆ THÔNG TIN S CHOOL OF INFORMATION COMMUNICATION TECHNOLOGY TIN HỌC ĐẠI CƯƠNG PHẦN 2: LẬP TRÌNH BẰNG NGÔN NGỮ C BÀI 5: HÀM Ts. Nguyễn Thanh Hùng 1
- BÀI 5: HÀM 5.1. Khái niệm hàm 5.2. Khai báo và sử dụng hàm 5.3. Phạm vi biến 5.4. Nguyên mẫu hàm 5.5. Hàm đệ qui 2
- 5.1. Khái niệm hàm Còn được gọi là chương trình con Những đoạn chương trình lặp đi lặp lại nhiều lần ở những chỗ khác nhau: Viết thành hàm để khi cần chỉ cần gọi ra chứ không phải viết lại toàn bộ. Ví dụ: Các hàm toán học: sin(x), pow(x,y), sqrt(x),... Các hàm do người dùng viết ra. 3
- 5.1. Khái niệm hàm Giải quyết một bài toán lớn thì chương trình của ta có thể rất lớn và dài Chia thành các công việc nhỏ hơn được viết thành các hàm Dễ viết, kiểm tra và sửa lỗi. Việc chia nhỏ một chương trình thành các chương trình con đảm nhận những công việc nhỏ khác nhau chính là tư tưởng chính cho phương pháp lập trình cấu trúc (structured programming). 4
- BÀI 5: HÀM 5.1. Khái niệm hàm 5.2. Khai báo và sử dụng hàm 5.3. Phạm vi biến 5.4. Nguyên mẫu hàm 5.5. Hàm đệ qui 5
- 5.2.1. Khai báo hàm Cú pháp: [kieu_gia_tri_tra_ve] ([danh_sach_tham_so,…]) { //Than ham` bao gom: //Cac khai bao ... //Cac cau lenh } 6
- 5.2.1. Khai báo hàm (tiếp) Ví dụ: long giai_thua(int a) Dong dau ham { long ket_qua; Cac khai bao int i; ket_qua = 1; for(i = 1;i
- 5.2.1. Khai báo hàm (tiếp) Kiểu dữ liệu trả về của hàm: Kiểu dữ liệu của giá trị tính toán mà hàm trả về sau khi thực hiện. Hàm có thể có giá trị trả về hoặc không có giá trị trả về. Nếu có giá trị trả về, trong thân hàm có ít nhất một lệnh return. Nếu không có giá trị trả về cần khai báo cho hàm đó có kiểu trả về là void. 8
- 5.2.1. Khai báo hàm (tiếp) Tên hàm Có thể là bất kì một định danh hợp lệ nào. Thường mang nghĩa gợi ý chức năng công 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 phương của một số thực x thì nên có tên là binh_phuong. Các hàm không được đặt tên trùng nhau. 9
- 5.2.1. Khai báo hàm (tiếp) Tham số của hàm: Các thông tin cần cho hoạt động của hàm và các thông tin, kết quả tính toán được 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 ra mà hàm tính toán được. Tham số trong lời khai báo hàm được gọi là tham số 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ố. Một hàm có thể không có tham số, hoặc có nhiều tham số. 10
- 5.2.1. Khai báo hàm (tiếp) Lệnh return Cú pháp: return bieu_thuc; Khi gặp lệnh này, chương trình sẽ tính toán giá trị của bieu_thuc, lấy kết quả tính toán được làm giá trị trả về cho lời gọi hàm rồi kết thúc việc thực hiện hàm, trở về chương trình đã gọi nó. Nếu thiếu bieu_thuc Kết thúc việc thực hiện hàm mà không trả về giá trị nào cả. 11
- Ví dụ về các hàm trong thư viện Math.h 12
- 5.2.2. Sử dụng hàm Sử dụng hàm hay gọi hàm Cú pháp: Ten_ham([danh_sach_doi_so]) Tham số được cung cấp cho hàm trong quá trình thực hiện được gọi là tham số thực. Kiểu dữ liệu của tham số hình thức và tham số thực phải giống nhau. 13
- Ví dụ #include #include int max(int x, int y, int z) { int max; max = x>y?x:y; max = max>z?max:z; return max; } void main() { int a,b,c; clrscr(); printf("\n Nhap gia tri cho 3 so nguyen a, b, c: "); scanf("%d %d %d",&a,&b,&c); printf("\n Gia tri cac so vua nhap: "); printf(" a = %-5d b = %-5d c = %-5d“, a, b, c); printf("\n Gia tri lon nhat trong 3 so la %d",max(a,b,c)); getch(); } 14
- Lưu ý Trong chương trình, khi gặp một lời gọi hàm thì hàm bắt đầu thực hiện bằng cách chuyển các lệnh thi hành đến hàm được gọi. Quá trình diễn ra như sau: Nếu hàm có tham số, trước tiên các tham số sẽ được gán giá trị thực tương ứng. Chương trình sẽ thực hiện tiếp các câu lệnh trong thân hàm bắt đầu từ lệnh đầu tiên đến câu lệnh cuối cùng. Khi gặp lệnh return hoặc dấu } cuối cùng trong thân hàm, chương trình sẽ thoát khỏi hàm để trở về chương trình gọi nó và thực hiện tiếp tục những câu lệnh của chương trình này. 15
- #include #define KT 1000 int nhap_so_pt() { int n; do { printf("Nhap vao so phan tu cua mang: "); scanf("%d", &n); if (n KT) printf("Nhap sai\n"); } while (n KT); return n; } void hien_thi_mang(int *a, int n) { int i; for (i = 0; i < n; i++) printf( "%4d", a[i]); } 16
- void nhap_mang(int *a, int n) { int i; for (i = 0; i < n; i++) { printf("Nhap phan tu thu %d: ", i+1); scanf("%d", &a[i]); } } void sap_xep_mang(int *a, int n) { int i, j, temp; for (i=0; i
- void main() { int a[KT]; int n; clrscr(); n = nhap_so_pt(); nhap_mang(a, n); printf("Mang theo thu tu ban dau\n"); hien_thi_mang(a, n); sap_xep_mang(a, n); printf("\nMang theo thu tu giam dan\n"); hien_thi_mang(a, n); getch(); } 18
- Viết hàm để hoán đổi giá trị hai biến? void trao_doi(int so1, int so2) { int temp; temp = so1; so1 = so2; so2 = temp; } void sap_xep_mang(int *a, int n) { int i, j, temp; for (i=0; i
- Gọi hàm: tham chiếu và tham trị Khi gọi hàm cần truyền đối số (tham số) cho hàm. 2 phương pháp truyền giá trị: Tham chiếu (biến) Tham trị 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng tin học đại cương - trường ĐH Tôn Đức Thắng
175 p | 1024 | 287
-
Bài giảng Tin học đại cương - Chương 1: Các vấn đề cơ bản về CNTT
167 p | 419 | 31
-
Bài giảng Tin học đại cương: Bài 1 - ĐH Bách khoa Hà Nội
33 p | 263 | 21
-
Bài giảng Tin học đại cương: Bài 4 - ĐH Bách khoa Hà Nội
8 p | 155 | 13
-
Bài giảng Tin học đại cương: Chương 2 - Tin học và công nghệ thông tin
12 p | 183 | 10
-
Bài giảng Tin học đại cương: Bài 3 - ĐH Bách khoa Hà Nội
14 p | 143 | 8
-
Bài giảng Tin học đại cương - Nguyễn Vũ Duy
95 p | 43 | 8
-
Bài giảng Tin học đại cương: Phần 1 - ThS. Phạm Thanh Bình
18 p | 93 | 6
-
Bài giảng Tin học đại cương: Chương 1 - Đại cương về tin học
16 p | 124 | 5
-
Bài giảng Tin học đại cương: Chương 1 - Thông tin
29 p | 150 | 5
-
Bài giảng Tin học đại cương: MS Excel - ThS. Ngô Cao Định
31 p | 11 | 4
-
Bài giảng Tin học đại cương: Tổng quan về máy tính - ThS. Ngô Cao Định
38 p | 15 | 4
-
Bài giảng Tin học đại cương: Biểu diễn và xử lý thông tin - ThS. Ngô Cao Định
56 p | 7 | 3
-
Bài giảng Tin học đại cương: Mạng và Internet - ThS. Ngô Cao Định
55 p | 9 | 3
-
Bài giảng Tin học đại cương: Hệ điều hành - ThS. Ngô Cao Định
86 p | 8 | 2
-
Bài giảng Tin học đại cương: Chương 1 - Trần Quang Hải Bằng (ĐH giao thông Vận tải)
31 p | 80 | 2
-
Bài giảng Tin học đại cương: Bài 13 - Bùi Thị Thu Cúc
10 p | 78 | 2
-
Bài giảng Tin học đại cương: Tổng quan về cơ sở dữ liệu - ThS. Ngô Cao Định
11 p | 7 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn