Các Hàm Trong C++
Hàm trong c nói riêng và trong các ngôn ngữ lập trình khác nói chung là phần xử lý được tạo ra để sử dụng lại.Trongđoạn chương trình bên dưới phần xử lý nhập và kiểm tra số nguyên dương LẶP LẠI 3 LẦN, việc này dẫnđến một số vấnđề như:Viết xử lý (code) nhiều lần vàkhi có sự thayđổi thì phải thayđổi nhiều lần
#include main(){ int x, y, z; //Nhập số thứ nhất do { printf("x = "); scanf("%d", &x); } while (x //Nhập số thứ hai do { printf("y = "); scanf("%d", &y); } while(y //Nhập số thứ ba do { printf("z = "); scanf("%d", &z); } while (z int tong = x + y + z; printf("Tong 3 so la %d", tong); }Hướng giải quyết:Những xử lý giống nhau sẽ xây dựng thành mộtđoạn chương trình vàđoạn chương trình này sẽđược sử dụnglạiở những yêu cầu tương tự vàđược gọi là hàm.
Bạn đang xem: Các hàm trong c++
Hàm trong c – Hàm là gì
Hàm là mộtđoạn chương trình bao gồm một hoặc nhiều xử lý nhằm giải quyết một công việc nào đóvàđược xây dựng với mụcđích TÁI SỬ DỤNG.
Như vậy trong một chương trình nếu có những xử lý giống nhau chúng ta nên xây dựng hàm.
Hàm có thểđược xây dựng bởi lập trình viên hoặc hàm có sẵn trong ngôn ngữ lập trình. Ví dụ trong lập trình C, chúng ta có thể liệt kê các hàm có sẵn như printf, scanf, pow, sqrt,…
Hàm trong c –Hàm tựđịnh nghĩa
Kiểu_Dữ_Liệu Tên_Hàm(Tham_Số_1, Tham_Số_2, ...){ Xử lý; }Giải thích
Kiểu dữ liệu có thể là int, long, float, double, char hoặc void.Đây chính là dữ liệu mà hàm có thể trả về (hay còn gọi làđâu ra – output).
Tên hàm phải là:động từ, không chứa khoảng trắng, không trùng từ khoá, không chứa ký tựđặc biệt vàđặt tên cóý nghĩa.
Tham số là dữ liệuđầu vào của hàm vàđược khai báo theo cú pháp sau:
Kiểu_Dữ_Liệu Tên_Tham_Số_1, Kiểu_Dữ_Liệu Tên_Tham_Số_2,...
Xem thêm: Tạm Biệt Vết Thâm Mụn, Trị Mụn Thâm Nhanh Nhất, 10 Cách Làm Hết Thâm Mụn Nhanh Nhất Tại Nhà
Ví dụ: Xây dựng hàm tính tổng 2 số nguyên
Cách 1: Hàm không trả về giá trị và không nhận tham sốđầu vào
void tinhTong1(){ int a, b, tong; printf("a = "); scanf("%d", &a); printf("b = "); scanf("%d", &b); tong = a + b; printf("Tong hai so la %d", tong); }Cách 2: Hàm nhận tham sốđầu vào và không trả về giá trị
void tinhTong2(int a, int b){ int tong; tong = a + b; printf("Tong hai so la %d", tong); }Cách 3: Hàm trả về giá trị và không nhận tham sốđầu vào
int tinhTong3(){ int a,b, tong; printf("Nhap so thu nhat a = "); scanf("%d", &a); printf("Nhap so thu hai b = "); scanf("%d", &b); tong = a + b; //Kết thúc hàm và trả về kết quả return tong; }Cách 4:Hàm trả về giá trị và nhận tham sốđầu vào
int tinhTong4(int a, int b){ int tong; tong = a + b; //Kết thúc hàm và trả về kết quả return tong;}
Hàm trong c – Gọi hàm
Gọi hàm thông qua tên hàm và truyền tham sốđầu vào hoặc xử lý kết quả trả vềnếu có.Gọi hàm tinhTong1 –Hàm không trả về giá trị và không nhận tham sốđầu vào
tinhTong1();Gọi hàm tinhTong2 –Hàm nhận tham sốđầu vào và không trả về giá trị
tinhTong(10, 20);Lưu ý: Trong 10 tươngứng vớia, 20 tươngứng với b, tức hàm xử lý tính tổng 10 và 20
Gọi hàm tinhTong3 –Hàm trả về giá trị và không nhận tham sốđầu vào
int ketqua;ketqua = tinhTong3();Lưu ý: Vì hàm tinhTong3 trả về kết quả là tổng của 2 số nên lúc gọi hàm chúng ta phải khai báo biến và gán kết quả trả về từ hàm.
Gọi hàm tinhTong4 –Hàm trả về giá trị và nhận tham sốđầu vào
int ketqua;ketqua = tinhTong4(1020, 4190);Tương tự như hàm tinhTong3, khi gọi hàm tinhTong4chúng ta phải xử lý kết quả trả về. Trong ví dụ trên, chúng ta thực hiện tính tổng 2 số 1020 và 4190. Kết quả tính toán được sẽ được gán vào biến ketqua.
Kết luận:Tuỳ vào mụcđích hay yêu cầu cụ thể mà chúng ta sẽ xây dựng hàm phù hợp. Gọi hàm thông qua tên hàm và phải phù hợp với định nghĩa của hàm.
Hàm trong c – Một số lỗi thường gặp khi làm việc với hàm
1/ Gọi sai tên hàm.
Xem thêm: Thuế Máu Thuộc Thể Loại Gì, Thể Loại Của Văn Bản Thuế Máu
2/ Gọi hàm không phù hợp vớiđịnh nghĩa3/ Hàm có nhận tham số nhưng khi gọi hàm thì không truyền tham sốđầu vào
ketqua = tinhTong4();4/ Truyền khôngđúng số lượng tham số
ketqua = tinhTong4(1502);5/ Truyền tham số không phù hợp với kiểu dữ liệu lúcđịnh nghĩa hàm
ketqua = tinhTong4(12.5, 20.9);Hàm tinhTong4 chỉ nhận 2 tham số kiểu int nhưng khi gọi hàm chúng ta truyền 2 tham số kiểu số thực.
Hàm trong c – Tổng kết
Mụcđích xây dựng hàmCú pháp xây dựng hàm trong lập trình cGọi hàmMột số lưuý khi làm việc với hàm
Hàm trong c – Bài tập thực hành
Bài thực hành số 1: Viết hàm tính chu vi và diện tích hình tròn
Bài thực hành số 2: Viết chương trình hỗ trợ người dùng thực hiện các phép tính gồm cộng, trừ, nhân và chia hai số
Nếu ký tự được nhập từ bàn phím là “+” thì phép tính cộngNếu ký tự được nhập từ bàn phím là “-” thì phép tính trừNếu ký tự được nhập từ bàn phím là “*” thì phép tính nhânNếu ký tự được nhập từ bàn phím là “/” thì phép tính chiaYêu cầu thực hiện: