c語言函數如何定義
Ⅰ 如何用c語言定義一個函數
函數是用戶與程序的介面,在定義一個函數前,首先要清楚以下三個問題。 1) 函數的功能實現及演算法選擇。演算法選擇會在後續文章詳細講解,本節重點關注函數的功能實現。一般選取能體現函數功能的函數名,且見名知意,如求和函數的函數名可取為 add,求最大值的函數名可取為 max,排序函數可取名為 sort 等。 2) 需要用戶傳給該函數哪些參數、什麼類型,即函數參數。 3) 函數執行完後返回給調用者的參數及類型,即函數返回值類型。 函教定義格式 函數定義的一般格式為: 返回類型 函數名 (類型參數1,類型參數2,…) { 函數體 } 也可以不含參數,不含參數時,參數表中可寫關鍵字 void 或省略,為規范起見,教程中對沒有參數的函數,參數表中統一寫 void。例如: 類型 函數名 () { 函數體 } 等價於: 類型 函數名 (void) //建議的書寫方式 { 函數體 } 如果該函數沒有返回類型,則為 void 類型。例如: void add (int x,int y) { printf ("sum=%d\n", x+y); } 除了 void 類型外,在函數體中,均需要顯式使用 return 語句返回對應的表達式的值。 函教返回值 函數的值是指調用函數結束時,執行函數體所得並返回給主調函數的值。 關於函數返回值說明如下。 1) 帶返回值的函數,其值一般使用 return 語句返回給調用者。其格式為: return 表達式; 或者 return (表達式); 例如: int add (int a, int b) { return (a + b); //return 後為表達式 } 函數可以含一個或多個 return 語句,但每次調用時只能執行其中一個 return 語句。 例如,求整數絕對值的函數: int f (int n) //含多個return語句,但每次調用只執行一個 { if (n >= 0) return n; else return -n; }