函數(shù)是用戶與程序的接口,在定義一個函數(shù)前,首先要清楚以下三個問題。1) 函數(shù)的功能實現(xiàn)及算法選擇。算法選擇會在后續(xù)文章詳細講解,本節(jié)重點關(guān)注函數(shù)的功能實現(xiàn)。一般選取能體現(xiàn)函數(shù)功能的函數(shù)名,且見名知意,如求和函數(shù)的函數(shù)名可取為 add,求最大值的函數(shù)名可取為 max,排序函數(shù)可取名為 sort 等。2) 需要用戶傳給該函數(shù)哪些參數(shù)、什么類型,即函數(shù)參數(shù)。3) 函數(shù)執(zhí)行完后返回給調(diào)用者的參數(shù)及類型,即函數(shù)返回值類型。 函教定義格式 函數(shù)定義的一般格式為: 返回類型 函數(shù)名 (類型參數(shù)1,類型參數(shù)2,…) {函數(shù)體 }也可以不含參數(shù),不含參數(shù)時,參數(shù)表中可寫關(guān)鍵字 void 或省略,為規(guī)范起見,教程中對沒有參數(shù)的函數(shù),參數(shù)表中統(tǒng)一寫 void。例如: 類型 函數(shù)名 () {函數(shù)體 }等價于: 類型 函數(shù)名 (void) //建議的書寫方式 {函數(shù)體 } 如果該函數(shù)沒有返回類型,則為 void 類型。例如: void add (int x,int y) {printf ("sum=%d\n", x+y); } 除了 void 類型外,在函數(shù)體中,均需要顯式使用 return 語句返回對應(yīng)的表達式的值。 函教返回值 函數(shù)的值是指調(diào)用函數(shù)結(jié)束時,執(zhí)行函數(shù)體所得并返回給主調(diào)函數(shù)的值。 關(guān)于函數(shù)返回值說明如下。1) 帶返回值的函數(shù),其值一般使用 return 語句返回給調(diào)用者。其格式為: return 表達式;或者 return (表達式);例如: int add (int a, int b) {return (a + b); //return 后為表達式 } 函數(shù)可以含一個或多個 return 語句,但每次調(diào)用時只能執(zhí)行其中一個 return 語句。例如,求整數(shù)絕對值的函數(shù): int f (int n) //含多個return語句,但每次調(diào)用只執(zhí)行一個 {if (n = 0)return n;elsereturn -n; }
創(chuàng)新互聯(lián)主營賀州網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,手機APP定制開發(fā),賀州h5微信平臺小程序開發(fā)搭建,賀州網(wǎng)站營銷推廣歡迎賀州等地區(qū)企業(yè)咨詢
C語言中一個完整的函數(shù)由函數(shù)首部和函數(shù)體構(gòu)成,而且定義函數(shù)時兩者都是必不可少的。函數(shù)定義的一般形式如下:類型標(biāo)識符 函數(shù)名(形參表列) // 這是函數(shù)首部 // 以下{ }內(nèi)的是函數(shù)體 { 說明部分執(zhí)行部分 } 舉例說明如下: // 定義一個不帶返回值的函數(shù) // 函數(shù)功能:輸出形參的值 void fun(int a, int b) { printf("%d, %d\n", a, b); } // 定義一個帶返回值的函數(shù) // 函數(shù)功能:返回2個整數(shù)數(shù)的最大值 int fun(int a, int b) { return ab ? a : b; }
一個函數(shù)(function)是一個可以從程序其它地方調(diào)用執(zhí)行的語句塊。以下是函數(shù)定義格式:
type name ( argument1, argument2, ...) statement
說明:
type 是函數(shù)返回的數(shù)據(jù)的類型
name 是函數(shù)被調(diào)用時使用的名
argument 是函數(shù)調(diào)用需要傳入的參量(可以聲明任意多個參量)。每個參量(argument)由一個數(shù)據(jù)類型后面跟一個標(biāo)識名稱組成,就像變量聲明中一樣(例如,int x)。參量僅在函數(shù)范圍內(nèi)有效,可以和函數(shù)中的其它變量一樣使用, 它們使得函數(shù)在被調(diào)用時可以傳入?yún)?shù),不同的參數(shù)用逗號(comma)隔開.
statement 是函數(shù)的內(nèi)容。它可以是一句指令,也可以是一組指令組成的語句塊。如果是一組指令,則語句塊必須用花括號{}括起來,這也是我們最常見到情況。其實為了使程序的格式更加統(tǒng)一清晰,建議在僅有一條指令的時候也使用花括號,這是一個良好的編程習(xí)慣。
示例:每一個C語言程序有且只有一個main函數(shù),本身main就是一個函數(shù)。結(jié)合上面的格式,自己理解一下。
int?main()
{
return?0;
}
# includestdio.h
int main()
{
int i,m=0;
for(i=2;i=100;i+=2) m=m+i;
printf("%d\n",m);
return 0;
}
或
#include
int
main()
{
int
i,sum=0;
for(i=1;i=50;i++)
{
sum=sum+2*i;
}
printf("2+4+6+…+98+100=%d\n",sum);
return
0;
}
擴展資料:
C程序是由一組變量或是函數(shù)的外部對象組成的。 函數(shù)是一個自我包含的完成一定相關(guān)功能的執(zhí)行代碼段。我們可以把函數(shù)看成一個“黑盒子”,只要將數(shù)據(jù)送進去就能得到結(jié)果,而函數(shù)內(nèi)部究竟是如何工作的,外部程序是不知道的。外部程序所知道的僅限于輸入給函數(shù)什么以及函數(shù)輸出什么。函數(shù)提供了編制程序的手段,使之容易讀、寫、理解、排除錯誤、修改和維護。
C程序中函數(shù)的數(shù)目實際上是不限的,如果說有什么限制的話,那就是,一個C程序中必須至少有一個函數(shù),而且其中必須有一個并且僅有一個以main為名的函數(shù),這個函數(shù)稱為主函數(shù),整個程序從這個主函數(shù)開始執(zhí)行。
參考資料來源:百度百科-C語言