nhap_mon_lap_trinh_phan_3 pot

22 165 0
nhap_mon_lap_trinh_phan_3 pot

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Hàm - Function Hàm - Function Hàm - Function Hàm - Function  Một số nguyên tắc Một số nguyên tắc  Cách khai báo và gọi thực hiện Cách khai báo và gọi thực hiện  Prototype của hàm Prototype của hàm  Truyền tham số cho hàm Truyền tham số cho hàm  Biến toàn cục, biến cục bộ, … Biến toàn cục, biến cục bộ, …  Cách thức C thực hiện các lời gọi hàm – stack. Cách thức C thực hiện các lời gọi hàm – stack.  Tại sao phải dùng Hàm Tại sao phải dùng Hàm Một số nguyên tắc Một số nguyên tắc  Các hàm trong NNLT C đều ngang cấp với nhau: Các hàm trong NNLT C đều ngang cấp với nhau:  Hàm không được khai báo lồng nhau. Hàm không được khai báo lồng nhau.  Thứ tự khai báo không quan trọng. Thứ tự khai báo không quan trọng.  Hàm có thể nhận và xử lý nhiều tham số hoặc không có Hàm có thể nhận và xử lý nhiều tham số hoặc không có tham số nào tham số nào  Hàm có thể trả về một giá trị hoặc không. Hàm có thể trả về một giá trị hoặc không.  Biến khai báo trong hàm F chỉ có giá trị trong F, không sử Biến khai báo trong hàm F chỉ có giá trị trong F, không sử dụng được biến này trong các hàm khác được. dụng được biến này trong các hàm khác được. Ví dụ: hàm tính x Ví dụ: hàm tính x n n double Power(double x, int n) { double result; for(result = 1; n; n ) result *= x; return result; } double Power(double x, int n) { double result; for(result = 1; n; n ) result *= x; return result; } nhận vào 2 tham số khi được gọi kiểu của giá trị trả về giá trị được trả về qua lệnh return Ví dụ: gọi thực hiện hàm Power Ví dụ: gọi thực hiện hàm Power #include <stdio.h> double Power(double, int); int main() { double m = Power(2, 3); printf(“3.5 ^ 4 = %lf”, Power(3.5, 4)); return 0; } #include <stdio.h> double Power(double, int); int main() { double m = Power(2, 3); printf(“3.5 ^ 4 = %lf”, Power(3.5, 4)); return 0; } Chỉ thị cho chương trình biết prototype của hàm Power 3.5 và 4: 2 tham số thực sự Một số lỗi thường gặp Một số lỗi thường gặp #include <stdio.h> int main() { int m = Power(2, 3); printf(“3.5 ^ 4 = %lf”, Power(4)); return 1.0; } #include <stdio.h> int main() { int m = Power(2, 3); printf(“3.5 ^ 4 = %lf”, Power(4)); return 1.0; } Compiler không hiểu được hàm Power giá trị trả về không khớp kiểu hàm Power thiếu tham số Prototypes Prototypes  Dòng khai báo Dòng khai báo double Power(double, int); được hiểu là khai báo được hiểu là khai báo prototype prototype của hàm Power của hàm Power  Được dùng khi chương trình sử dụng một hàm trước khi khai Được dùng khi chương trình sử dụng một hàm trước khi khai báo. báo.  Khai báo prototype thông báo cho trình biên dịch biết kiểu Khai báo prototype thông báo cho trình biên dịch biết kiểu của giá trị trả về và mô tả chi tiết về các tham số của hàm. của giá trị trả về và mô tả chi tiết về các tham số của hàm.  Các hàm thư viện chuẩn được khai báo prototype trong các Các hàm thư viện chuẩn được khai báo prototype trong các tập tin header (stdio.h, conio.h, …). tập tin header (stdio.h, conio.h, …).  Các hàm do lập trình viên tự xây dựng phải tự khai báo Các hàm do lập trình viên tự xây dựng phải tự khai báo prototype. prototype. Hàm: dạng tổng quát Hàm: dạng tổng quát kiểu trả về tên hàm(danh sách tham số hình thức) { //khai báo các biến của hàm //các lệnh thực thi return giá trị trả về; //hàm void không có giá trị trả về } kiểu trả về tên hàm(danh sách tham số hình thức) { //khai báo các biến của hàm //các lệnh thực thi return giá trị trả về; //hàm void không có giá trị trả về } header của hàm thân (body) hàm float g=6.5, f; void main() { int i = 5, j, k = 2; float f = 2.8F; d = 3.7; } void F(int v) { double d, e = 0.0, f; i++; g ; f = 0.0; } float g=6.5, f; void main() { int i = 5, j, k = 2; float f = 2.8F; d = 3.7; } void F(int v) { double d, e = 0.0, f; i++; g ; f = 0.0; } Tầm tác dụng của biến Tầm tác dụng của biến  Biến toàn cục: Biến toàn cục: Không thuộc khối Không thuộc khối nào, có tác dụng nào, có tác dụng trong toàn chương trong toàn chương trình kể từ khi khai trình kể từ khi khai báo báo  Biến cục bộ: khai Biến cục bộ: khai báo trong một khối, báo trong một khối, chỉ có tác dụng chỉ có tác dụng trong khối này trong khối này compiler không chấp nhận “d”, “i” “f” của hàm F, không phải của main . Power(2, 3) ; printf( 3. 5 ^ 4 = %lf”, Power (3. 5, 4)); return 0; } #include <stdio.h> double Power(double, int); int main() { double m = Power(2, 3) ; printf( 3. 5 ^ 4 = %lf”, Power (3. 5, 4)); return. prototype của hàm Power 3. 5 và 4: 2 tham số thực sự Một số lỗi thường gặp Một số lỗi thường gặp #include <stdio.h> int main() { int m = Power(2, 3) ; printf( 3. 5 ^ 4 = %lf”, Power(4)); return. 4 = %lf”, Power(4)); return 1.0; } #include <stdio.h> int main() { int m = Power(2, 3) ; printf( 3. 5 ^ 4 = %lf”, Power(4)); return 1.0; } Compiler không hiểu được hàm Power giá trị trả về

Ngày đăng: 12/08/2014, 00:22

Mục lục

  • Một số nguyên tắc

  • Ví dụ: hàm tính xn

  • Ví dụ: gọi thực hiện hàm Power

  • Một số lỗi thường gặp

  • Hàm: dạng tổng quát

  • Tầm tác dụng của biến

  • Truyền tham số cho hàm

  • Truyền giá trị - ví dụ

  • Truyền địa chỉ - ví dụ

  • Truyền tham chiếu - ví dụ

  • Truyền tham số - ví dụ

  • Phương thức trao đổi dữ liệu

  • Bài đọc thêm: tổ chức dữ liệu

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan