1、分類:(1)庫函式:io庫函式,字串操作庫函式,字元操作庫函式,時間\日期庫函式,數學函式,其他庫函式。
(2)自定義函式:與庫函式相同,有函式名,返回值型別和函式引數,但都又自己設計。其組成如下:
ret_type fun_name (para1,*)
ret_type 返回型別
fun_name 函式名
para1 函式引數
2、引數:(1)實際引數(實參):真實傳給函式的引數,可以是常量、變數、表示式、函式等,但在進行函式呼叫的時候,它們必須有確定的值,以便把這些值傳給形參。
(2)形式引數(形參):函式名後括號中的變數,形式引數只有在被呼叫時才例項化(分配儲存單元),當呼叫完 後會自動銷毀,因此形參只在函式中才有效。
注:形參例項化之後其實相當於實參的乙份臨時拷貝。
3、呼叫:(1)傳值呼叫:函式形參與實參占有不同的記憶體塊,對形參的修改不會影響實參。
void swap1(int x,int y)
void swap2(int* px,int* py)
int main()
4、函式之間可以巢狀呼叫以及鏈式訪問。
eg: printf("%d",printf("%d",printf("%d",43)));
//1 //2 //43
最終輸出結果為:4321
5、(1)函式宣告:告訴編譯器函式的返回型別、函式名和引數,但具體是否存在無關緊要,函式宣告一般在定義之前,先宣告後使用,其宣告一般要放在標頭檔案中。
(2)函式定義:函式的具體實現,交代函式的功能實現。
#ifdef __test_h__
#define __test_h__
//函式的宣告
int add(int x,int y);
#endif //__test_h__
6、具體例項:參照本人部落格《c語言 example 四》。
1、遞迴:程式呼叫自身的程式設計技巧。思考方式為:大事化小。
2、遞迴的兩個必要條件:(1)存在限制條件,當滿足這個限制條件時,遞迴不在繼續。(2)每次遞迴後越來越接近這個限制條件。
c語言函式 遞迴
函式的遞迴可以簡單的理解為迴圈,但他和迴圈是不一樣的。函式的一次遞迴呼叫相當於一次迴圈。一般情況下,迴圈要比遞迴計算的時間要快一些 函式的遞迴是在函式內呼叫自己,滿足限制條件後,就會返回到上乙個函式,知道返回到最初的函式 遞迴的呼叫條件 1 限制條件 滿足這個條件,遞迴將不再進行。2 每次的遞迴呼叫...
遞迴與尾遞迴 (C語言)
在電腦科學領域中,遞迴式通過遞迴函式來實現的。程式呼叫自身的程式設計技巧稱為遞迴 recursion 乙個過程或函式在其定義或說明中有直接或間接呼叫自身的一種方法,它通常把乙個大型複雜的問題層層轉化為乙個與原問題相似的規模較小的問題來求解,遞迴策略只需少量的程式就可描述出解題過程所需要的多次重複計算...
遞迴與尾遞迴(C語言)
在電腦科學領域中,遞迴式通過遞迴函式來實現的。程式呼叫自身的程式設計技巧稱為遞迴 recursion 乙個過程或函式在其定義或說明中有直接或間接呼叫自身的一種方法,它通常把乙個大型複雜的問題層層轉化為乙個與原問題相似的規模較小的問題來求解,遞迴策略只需少量的程式就可描述出解題過程所需要的多次重複計算...