日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

C语言核心技术——函数

發布時間:2025/3/20 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C语言核心技术——函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

C語言文章更新目錄

C/C++學習資源(百度云盤鏈接)
計算機二級資料(過級專用)
C語言學習路線(從入門到實戰)
編寫C語言程序的7個步驟和編程機制
C語言基礎-第一個C程序
C語言基礎-簡單程序分析
VS2019編寫簡單的C程序示例
簡單示例,VS2019調試C語言程序
C語言基礎-基本算法
C語言基礎-數據類型
C語言中的輸入輸出函數
C語言流程控制語句
C語言數組——一維數組
C語言數組——二維數組
C語言數組——字符數組
C語言中常用的6個字符串處理函數
精心收集了60個C語言項目源碼,分享給大家

對于一個C程序而言,它所有的命令都包含在函數內。每個函數都會執行特定的任務。有一個特別的函數,名稱為main()——該函數是程序啟動后,第一個執行的函數。其他所有函數都是main()函數的子函數(或者與之相關聯的過程,例如回調函數),并且它們的函數名稱可以自己設定。每個函數都只能被定義一次。但一個函數可以根據需要被多次的聲明和調用。

函數的定義

C 語言中的函數定義的一般形式如下:

return_type function_name( parameter list ) {body of the function }

函數由一個函數頭和一個函數主體組成。下面列出一個函數的所有組成部分:

  • 返回類型: 一個函數可以返回一個值。return_type 是函數返回的值的數據類型。有些函數執行所需的操作而不要返回值,在這種情況下,return_type 是關鍵字 void
  • 函數名稱: 這是函數的實際名稱。函數名和參數列表一起構成了函數簽名。
  • 參數: 參數就像是占位符。當函數被調用時,您向參數傳遞一個值,這個值被稱為實際參數。參數列表包括函數參數的類型、順序、數量。參數是可選的,也就是說,函數可能不包含參數。
  • 函數主體: 函數主體包含一組定義函數執行任務的語句。

下來看個示例:

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

{}之間的內容則為函數體。

函數的聲明和調用

在使用函數之前應該先聲明,事先通知編譯器該函數的類型:換句話說,一個聲明即是描述一個函數的接口。聲明至少應指明函數返回值的類型,如下例所示:

int add(int a, int b);

在函數聲明中,參數的名稱并不重要,只有參數的類型是必需的,因此下面也是有效的聲明:

int max(int, int);

創建 C 函數時,會定義函數做什么,然后通過調用函數來完成已定義的任務。

當程序調用函數時,程序控制權會轉移給被調用的函數。被調用的函數執行已定義的任務,當函數的返回語句被執行時,或到達函數的結束括號時,會把程序控制權交還給主程序。

調用函數時,傳遞所需參數,如果函數返回一個值,則可以存儲返回值。

接下來我們再看一個示例:

#include <stdio.h>/* 函數聲明 */ int max(int num1, int num2);int main() {/* 局部變量定義 */int a = 100;int b = 200;int ret;/* 調用函數來獲取最大值 */ret = max(a, b);printf("Max value is : %d\n", ret);return 0; }/* 函數返回兩個數中較大的那個數 */ int max(int num1, int num2) {/* 局部變量聲明 */int result;if (num1 > num2)result = num1;elseresult = num2;return result; }

運行結果如下:

函數調用這一塊我想著重說下遞歸調用

所謂遞歸,就是自己調用自己。C語言中函數可以直接或間接的調用自己,所謂的間接調用,是指在遞歸函數調用的下層函數中再調用自己,遞歸關系如下圖:

  • 直接調用

  • 間接調用

語法格式如下:

void recursion() {statements;... ... ...recursion(); /* 函數調用自身 */... ... ... }int main() {recursion(); }

流程圖:

下來我們一起看一個關于函數遞歸調用的示例

//下面的實例使用遞歸函數生成一個給定的數的斐波那契數列: #include <stdio.h>int fibonaci(int i) {if(i == 0){return 0;}if(i == 1){return 1;}return fibonaci(i-1) + fibonaci(i-2); }int main() {int i;for (i = 0; i < 10; i++){printf("%d\t\n", fibonaci(i));}return 0; }

函數運行結果:

關于函數今天就先介紹到這,后面繼續更新。。。

如果您覺得本篇文章對您有幫助,請轉發給更多的人
C語言中文社區】是一個C語言/C++視頻教程、學習筆記、電子書、計算機二級資料等專注于C語言/C++編程學習者的干貨知識分享平臺,精選深度文章,分享優秀干貨類、技能類的學習資源,幫助學習中的你。

總結

以上是生活随笔為你收集整理的C语言核心技术——函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。