Hàm trong C và cách sử dụng hiệu quả

1、Giới thiệu về hàm

Hàm là một đoạn mã nguồn có chức năng特定, có thể gọi lại khi cần thiết. Mục đích chính của hàm là tái sử dụng mã nguồn và phát triển模块 hóa.

Quy trình tạo hàm自定義包括 2 bước:

0、Xác định yêu cầu, phân tích kiểu dữ liệu trả về, tên hàm, và danh sách tham số形式.

1、Viết hàm theo cấu trúc định義 hàm

2、Gọi hàm để sử dụng chức năng.

2、Cấu trúc định nghĩa hàm

2.1、Cú pháp định nghĩa hàm

Phải định nghĩa hàm trước khi sử dụng.

Cú pháp định nghĩa hàm:

Kiểu dữ liệu trả về TênHàm(DanhSáchThamSố) {

ThểHàm

}

Kiểu dữ liệu trả về:

  • Giá trị trả về: Kết quả mà hàm gửi trả cho người gọi. Mỗi hàm chỉ trả về một giá trị duy nhất.
  • Kiểu dữ liệu trả về: Tùy thuộc vào yêu cầu chức năng. Nếu không cần trả về giá trị, sử dụng void.

Tên hàm: TỰ ĐẶT, phải tuân thủ quy tắc đặt tên biến.

Danh sách tham số: Tùy thuộc vào yêu cầu và tính tái sử dụng của hàm.

  • Không cần tham số: Viết void.
  • Có tham số: Danh sách tham số tùy theo chức năng, ví dụ: KiểuDỮLiệu TênThamSố1, KiểuDỮLiệu TênThamSố2.

Ví dụ 1:

Yêu cầu: Tạo một hàm để tính tổng hai số.

Phân tích:

  • Kiểu dữ liệu trả về: int (vì kết quả là tổng hai số nguyên).
  • Tên hàm: tongHaiSo.
  • Danh sách tham số: int so1, int so2.

Code:

int tongHaiSo(int so1, int so2)
{
    return so1 + so2;
}

Ví dụ 2:

Yêu cầu: Tạo một hàm để kiểm tra số là chẵn hay lẻ.

Phân tích:

  • Kiểu dữ liệu trả về: int (trả về 0 nếu chẵn, 1 nếu lẻ).
  • Tên hàm: xetChanLe.
  • Danh sách tham số: int so.

Code:

int xetChanLe(int so)
{
    if(so % 2 == 0)
    {
        return 0;
    }
    else
    {
        return 1;
    }
}
2.2、Vị trí định nghĩa hàm

Hàm không thể được định nghĩa嵌套.

Có hai cách:

  • Cách 1: Định nghĩa hàm ở trên hàm main hoặc hàm gọi nó.
#include<stdio.h>
void hienThiGiaoDien(void)
{
    // Thể hàm
}

int main(void)
{
    // Gọi hàm
    hienThiGiaoDien();
    return 0;
}
  • Cách 2: Khai báo hàm ở trên hàm main hoặc hàm gọi nó, sau đó định nghĩa hàm bên dưới.
int tinhTong(int a, int b);

int main(void)
{
    int ketQua = tinhTong(5, 10);
    printf("%d\n", ketQua);
    return 0;
}

int tinhTong(int a, int b)
{
    return a + b;
}
2.3、Thể hiện hàm

Trong thân hàm {}, sử dụng tham số形式 như dữ liệu để thực hiện logic.

Ví dụ 1:

Yêu cầu: Tạo một hàm để tính tổng hai số.

Code:

int tongHaiSo(int so1, int so2)
{
    int ketQua = so1 + so2;
    return ketQua;
}

Ví dụ 2:

Yêu cầu: Tạo một hàm để kiểm tra số là chẵn hay lẻ.

Code:

int xetChanLe(int so)
{
    if(so % 2 == 0)
    {
        return 0; // Chẵn
    }
    else
    {
        return 1; // Lẻ
    }
}
2.4、Tóm tắt quy trình định nghĩa hàm

1、Xác định chức năng cần实现.

2、Phân tích ba yếu tố của hàm: Kiểu dữ liệu trả về, tên hàm, và danh sách tham số.

3、Viết khung định nghĩa hàm.

4、Thực hiện thân hàm bằng cách sử dụng tham số形式 để xử lý logic.

3、Gọi hàm

Yêu cầu: Hàm phải được định nghĩa trước.

Cú pháp gọi hàm:

  • Hàm không có tham số và không trả về giá trị: void showUI(); --> showUI();

  • Hàm có tham số nhưng không trả về giá trị: void srand(unsigned int seed); --> srand(1000);

  • Hàm không có tham số nhưng trả về giá trị: int rand(void); --> int ketQua = rand();

  • Hàm có tham số và trả về giá trị: int xetChanLe(int so); --> int so = 10; int ketQua = xetChanLe(so);

Ví dụ 1:

Yêu cầu: Tạo một hàm để tính tổng hai số.

Code:

int tongHaiSo(int so1, int so2)
{
    return so1 + so2;
}

int main()
{
    // Cách 1
    int a = 10;
    int b = 20;
    int ketQua1 = tongHaiSo(a, b);
    printf("%d\n", ketQua1);

    // Cách 2
    int ketQua2 = tongHaiSo(30, 50);
    printf("%d\n", ketQua2);

    return 0;
}

Ví dụ 2:

Yêu cầu: Tạo một hàm để kiểm tra số là chẵn hay lẻ.

Code:

int xetChanLe(int so)
{
    if(so % 2 == 0)
    {
        return 0; // Chẵn
    }
    else
    {
        return 1; // Lẻ
    }
}

int main(void)
{
    int so;
    printf("Nhập một số: ");
    scanf("%d", &so);

    int ketQua = xetChanLe(so);

    if(ketQua == 0)
    {
        printf("Số chẵn");
    }
    else
    {
        printf("Số lẻ");
    }

    return 0;
}

Thẻ: Hàm trong C Khởi tạo hàm Sử dụng hàm hiệu quả

Đăng vào ngày 16 tháng 6 lúc 05:27