C語言自定義函數詳解

一、C語言自定義函數的使用方法

1、函數是C語言最基本的模塊,包括一個函數頭和函數體,在函數頭中定義函數名、參數列表和返回值類型,函數體內為具體的執行語句。

2、調用函數前需要聲明函數,且聲明必須位於調用函數之前。

3、函數調用時,通過傳遞參數給函數的參數列表,從而將控制權轉交給該函數執行。在執行完畢後返回結果給主調函數,繼續執行主函數。

4、C語言中,函數可以作為參數傳遞給另一個函數,也可以在函數內部進行遞歸調用。


#include <stdio.h>

int sum(int a, int b) {
    return a + b;
}

int main() {
    int a = 1, b = 2;
    printf("The sum of %d and %d is %d\n", a, b, sum(a,b));
    return 0;
}

二、C語言如何自定義函數

1、使用關鍵字「函數類型 函數名()」定義函數頭,如「int sum()」。

2、定義函數體,函數體是由多條C語言語句構成。

3、函數返回值通過return語句返回。


#include <stdio.h>

int sum(int a, int b) {
    int result = a + b;
    return result;
}

int main() {
    int a = 1, b = 2;
    int result = sum(a,b);
    printf("The sum of %d and %d is %d\n", a, b, result);
    return 0;
}

三、C語言自定義函數求圓的面積

1、圓的面積公式為:S=πr^2,其中π=3.14159。

2、定義一個求圓面積的函數,函數的參數為半徑r,返回值為圓的面積S。


#include <stdio.h>
#define PI 3.14159

double circleArea(double r) {
    double area = PI * r * r;
    return area;
}

int main() {
    double r = 5.0;
    double area = circleArea(r);
    printf("The area of the circle with radius %lf is %lf\n", r, area);
    return 0;
}

四、C語言自定義函數用地址符

1、C語言中,我們可以使用地址符(&)獲取變數的地址,也可以通過間址運算符(*)來訪問指向該地址的變數。

2、定義一個函數,通過指針參數修改變數值。


#include <stdio.h>

void changeValue(int* a) {
    *a = 10;
}

int main() {
    int a = 5;
    printf("Before: a=%d\n",a);
    changeValue(&a);
    printf("After: a=%d\n",a);
    return 0;
}

五、C語言自定義函數求平均數

1、定義一個函數,傳入一個整型數組和數組長度,返回數組元素的平均值。


#include <stdio.h>

double average(int arr[], int size) {
    int sum = 0;
    for(int i=0; i<size; i++) {
        sum += arr[i];
    }
    double avg = (double)sum / size;
    return avg;
}

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    int size = sizeof(arr) / sizeof(arr[0]);
    double avg = average(arr, size);
    printf("The average of the array is %lf\n", avg);
    return 0;
}

六、C語言自定義函數格式有幾種

1、C語言中,函數格式主要分為以下兩種:有返回值函數和無返回值函數。

2、有返回值函數:形如「函數類型 函數名()」,如「int sum()」。

3、無返回值函數:形如「void 函數名()」,如「void print()」。


#include <stdio.h>

int sum(int a, int b) {
    int result = a + b;
    return result;
}

void print() {
    printf("Hello, world!\n");
}

int main() {
    int a = 1, b = 2;
    int result = sum(a,b);
    printf("The sum of %d and %d is %d\n", a, b, result);

    print();

    return 0;
}

七、C語言自定義函數可以調用自己嗎

1、C語言函數可以調用自己的情況叫做遞歸,遞歸可以用來處理複雜的數據結構,如樹和圖。

2、遞歸函數必須包含兩部分:基本語句和遞歸語句。基本語句返回函數值,遞歸語句調用該函數。


#include <stdio.h>

int factorial(int n) {
    if (n == 0) {
        return 1;
    }
    else {
        return n * factorial(n-1);
    }
}

int main() {
    int n = 5;
    printf("%d! = %d\n", n, factorial(n));
    return 0;
}

八、C語言自定義函數例子

1、定義一個函數,判斷一個數字是否是素數。


#include <stdio.h>
#include <stdbool.h>

bool isPrime(int num) {
    if (num<=1) {
        return false;
    }
    for (int i=2; i*i<=num; i++) {
        if (num % i == 0) {
            return false;
        }
    }
    return true;
}

int main() {
    int num = 17;
    if (isPrime(num)) {
        printf("%d is a prime number\n", num);
    }
    else {
        printf("%d is not a prime number\n", num);
    }
    return 0;
}

九、C語言自定義函數名命名規則

1、函數名必須以字母或下劃線開頭,後面可以跟著字母、下劃線或數字。

2、函數名不能與C語言的關鍵字衝突。

3、函數名最好能夠簡明易懂,函數的作用要能夠準確地表達出來。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/219900.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-09 11:02
下一篇 2024-12-09 11:02

相關推薦

  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python中capitalize函數的使用

    在Python的字元串操作中,capitalize函數常常被用到,這個函數可以使字元串中的第一個單詞首字母大寫,其餘字母小寫。在本文中,我們將從以下幾個方面對capitalize函…

    編程 2025-04-29
  • Python中set函數的作用

    Python中set函數是一個有用的數據類型,可以被用於許多編程場景中。在這篇文章中,我們將學習Python中set函數的多個方面,從而深入了解這個函數在Python中的用途。 一…

    編程 2025-04-29
  • 單片機列印函數

    單片機列印是指通過串口或並口將一些數據列印到終端設備上。在單片機應用中,列印非常重要。正確的列印數據可以讓我們知道單片機運行的狀態,方便我們進行調試;錯誤的列印數據可以幫助我們快速…

    編程 2025-04-29
  • 三角函數用英語怎麼說

    三角函數,即三角比函數,是指在一個銳角三角形中某一角的對邊、鄰邊之比。在數學中,三角函數包括正弦、餘弦、正切等,它們在數學、物理、工程和計算機等領域都得到了廣泛的應用。 一、正弦函…

    編程 2025-04-29
  • Python3定義函數參數類型

    Python是一門動態類型語言,不需要在定義變數時顯示的指定變數類型,但是Python3中提供了函數參數類型的聲明功能,在函數定義時明確定義參數類型。在函數的形參後面加上冒號(:)…

    編程 2025-04-29
  • AES加密解密演算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密演算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES演算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演著非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python實現計算階乘的函數

    本文將介紹如何使用Python定義函數fact(n),計算n的階乘。 一、什麼是階乘 階乘指從1乘到指定數之間所有整數的乘積。如:5! = 5 * 4 * 3 * 2 * 1 = …

    編程 2025-04-29
  • Python定義函數判斷奇偶數

    本文將從多個方面詳細闡述Python定義函數判斷奇偶數的方法,並提供完整的代碼示例。 一、初步了解Python函數 在介紹Python如何定義函數判斷奇偶數之前,我們先來了解一下P…

    編程 2025-04-29

發表回復

登錄後才能評論