nhập môn lập trình c06 ham

21 52 0
nhập môn lập trình c06 ham

Đ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

Trường Đại học Khoa học Tự nhiên Khoa Công nghệ thơng tin NHẬP MƠN LẬP TRÌNH HÀM VC & BB Nội dung Khái niệm cú pháp Tầm vực Tham số lời gọi hàm NMLT - Hàm (Function) VC & BB Hàm Khái niệm  Một đoạn chương trình có tên, đầu vào đầu  Có chức giải số vấn đề chun biệt cho chương trình  Được gọi nhiều lần với tham số (đầu vào) khác  Được sử dụng có nhu cầu: • Tái sử dụng • Sửa lỗi cải tiến NMLT - Hàm (Function) VC & BB Hàm Cú pháp ([danh sách tham số]) { [return ;] }  Trong • : kiểu C (char, int, long, float,…) Nếu khơng trả void • : theo quy tắc đặt tên định danh • : tham số hình thức đầu vào giống khai báo biến, cách dấu , • : trả cho hàm qua lệnh return NMLT - Hàm (Function) VC & BB Các bước viết hàm Cần xác định thông tin sau đây:  Hàm thực cơng việc  Tên hàm + Cách giải  Các đầu vào (nếu có)  Đầu (nếu có) Đầu vào Đầu vào Đầu vào n Tên hàm Đầu (nếu có) Các cơng việc thực NMLT - Hàm (Function) VC & BB Hàm Ví dụ  Cơng việc: tính xuất tổng số ngun  Tên hàm: XuatTong  Đầu vào: hai số nguyên x y  Đầu ra: khơng có void XuatTong(int x, int y) { int s; s = x + y; printf(“%d cong %d bang %d”, x, y, s); } NMLT - Hàm (Function) 10 VC & BB Hàm Ví dụ  Cơng việc: tính trả tổng số nguyên  Tên hàm: TinhTong  Đầu vào: hai số nguyên x y  Đầu ra: số nguyên có giá trị x + y int TinhTong(int x, int y) { int s; s = x + y; return s; } NMLT - Hàm (Function) 11 VC & BB Hàm Ví dụ  Cơng việc: nhập số nguyên xuất tổng số nguyên  Tên hàm: NhapXuatTong  Đầu vào: khơng có  Đầu ra: khơng có void NhapXuatTong() { int x, y; printf(“Nhap so nguyen: ”); scanf(“%d%d”, &x, &y); printf(“%d cong %d bang %d”, x, y, x + y); } NMLT - Hàm (Function) 12 VC & BB Tầm vực Khái niệm  Là phạm vi hiệu biến hàm  Biến: • Tồn cục: khai báo ngồi tất hàm (kể hàm main) có tác dụng lên tồn chương trình • Cục bộ: khai báo hàm khối { } có tác dụng thân hàm khối (kể khối nó) Biến cục bị xóa khỏi nhớ kết thúc khối khai báo NMLT - Hàm (Function) 13 VC & BB Tầm vực int a; int Ham1() { int a1; } int Ham2() { int a2; { int a21; } } void main() { int a3; } NMLT - Hàm (Function) 14 VC & BB Một số lưu ý Thông thường người ta thường đặt phần tiêu đề hàm/nguyên mẫu hàm (prototype) hàm main phần định nghĩa hàm hàm main void XuatTong(int x, int y); // prototype void main() { … } void XuatTong(int x, int y) { printf(“%d cong %d bang %d”, x, y, x + y); } NMLT - Hàm (Function) 15 VC & BB Các cách truyền tham số Truyền Giá trị (Call by Value)  Truyền tham số cho hàm dạng giá trị  Có thể truyền hằng, biến, biểu thức hàm nhận giá trị  Được sử dụng khơng có nhu cầu thay đổi giá trị tham số sau thực hàm void TruyenGiaTri(int x) { … x++; } NMLT - Hàm (Function) 16 VC & BB Các cách truyền đối số  Truyền Tham biến (C++)  Truyền đối số cho hàm, bắt đầu & khai báo  Chỉ truyền biến cho tham số  Được sử dụng có nhu cầu thay đổi giá trị tham số sau thực hàm void TruyenThamChieu(int &x) { … x++; } void main() { int a = 0; TruyenThamChieu(a); } NMLT - Hàm (Function) 18 VC & BB Lưu ý truyền đối số Lưu ý  Trong hàm, tham số truyền theo nhiều cách void HonHop(int x, int &y) { … x++; y++; } NMLT - Hàm (Function) 19 VC & BB Lưu ý truyền đối số Lưu ý  Sử dụng tham biến cách để trả giá trị cho chương trình int TinhTong(int x, int y) { return x + y; } void TinhTong(int x, int y, int &tong) { tong = x + y; } void TinhTongHieu(int x, int y, int &tong, int &hieu) { tong = x + y; hieu = x – y; 20 NMLT - Hàm (Function) } VC & BB Lời gọi hàm Cách thực  Gọi tên hàm đồng thời truyền đối số (hằng, biến, biểu thức) cho tham số theo thứ tự khai báo hàm  Các biến trị cách dấu ,  Các đối số được đặt cặp dấu ngoặc đơn ( ) (,… , ); NMLT - Hàm (Function) 21 VC & BB Lời gọi hàm Ví dụ { Các hàm khai báo } void main() { int n = 9; XuatTong(1, 2); XuatTong(1, n); TinhTong(1, 2); int tong = TinhTong(1, 2); TruyenGiaTri(1); TruyenGiaTri(n); TruyenThamChieu(1); TruyenThamChieu(n); } NMLT - Hàm (Function) 22 VC & BB Lời gọi chương trình Ví dụ void HoanVi(int &a, int &b); void main() { HoanVi(2912, 1706); int x = 2912, y = 1706; HoanVi(x, y); } void HoanVi(int &a, int &b) { int tam = a; a = b; b = tam; } NMLT - Hàm (Function) 23 VC & BB Bài tập thực hành Bài 4, 5, 6, 7, trang 140-141 chương (Câu lệnh điều kiện rẽ nhánh) a Viết hàm đổi ký tự hoa sang ký tự thường b Viết thủ tục giải phương trình bậc c Viết thủ tục giải phương trình bậc hai d Viết hàm trả giá trị nhỏ số nguyên e Viết thủ tục hoán vị hai số nguyên f Viết thủ tục xếp số nguyên tăng dần NMLT - Hàm (Function) 26 VC & BB Bài tập thực hành Bài tập trang 155 chương (Câu lệnh lặp) Hàm nhận vào số nguyên dương n thực hiện: a Trả số đảo số b Có phải số đối xứng (Trả True/False) c Có phải số phương d Có phải số ngun tố e Tổng chữ số lẻ f Tổng chữ số nguyên tố g Tổng chữ số phương NMLT - Hàm (Function) 27 VC & BB Bài tập thực hành Bài tập trang 156 chương (Câu lệnh lặp) Hàm nhận vào số nguyên dương n thực hiện: a S = + + … + n b S = 12 + 22 + … + n2 c S = + 1/2 + … + 1/n d S = * * … * n e S = 1! + 2! + … + n! Hàm trả USCLN số nguyên In n phần tử dãy Fibonacy NMLT - Hàm (Function) 28 ... vực Tham số lời gọi hàm NMLT - Hàm (Function) VC & BB Hàm Khái niệm  Một đoạn chương trình có tên, đầu vào đầu  Có chức giải số vấn đề chun biệt cho chương trình  Được gọi nhiều lần với tham... số  Truyền Tham biến (C++)  Truyền đối số cho hàm, bắt đầu & khai báo  Chỉ truyền biến cho tham số  Được sử dụng có nhu cầu thay đổi giá trị tham số sau thực hàm void TruyenThamChieu(int... truyền tham số Truyền Giá trị (Call by Value)  Truyền tham số cho hàm dạng giá trị  Có thể truyền hằng, biến, biểu thức hàm nhận giá trị  Được sử dụng khơng có nhu cầu thay đổi giá trị tham số

Ngày đăng: 22/09/2020, 09:06

Hình ảnh liên quan

• <danh sách tham số> : tham số hình thức đầu vào - nhập môn lập trình c06 ham

lt.

;danh sách tham số> : tham số hình thức đầu vào Xem tại trang 4 của tài liệu.

Từ khóa liên quan

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

Tài liệu liên quan