聲明部分
創(chuàng)新互聯(lián)公司專注于企業(yè)營(yíng)銷型網(wǎng)站建設(shè)、網(wǎng)站重做改版、紫金網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場(chǎng)景定制、商城系統(tǒng)網(wǎng)站開(kāi)發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為紫金等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
定義部分//或者說(shuō)算法
C語(yǔ)言中函數(shù)包括函數(shù)首部和函數(shù)體,函數(shù)首部又包括函數(shù)類型、函數(shù)名、形參、有的還包括存儲(chǔ)方式等,函數(shù)體是函數(shù)實(shí)現(xiàn)的具體功能。
C語(yǔ)言中函數(shù)和函數(shù)體的區(qū)別為:傳遞參數(shù)不同、返回值不同、調(diào)用不同。
一、傳遞參數(shù)不同
1、函數(shù):函數(shù)具有明確的入口傳遞參數(shù)。
2、函數(shù)體:函數(shù)體沒(méi)有明確的入口傳遞參數(shù),內(nèi)部進(jìn)行定義和說(shuō)明。
二、返回值不同
1、函數(shù):函數(shù)可以有返回值也可以設(shè)為void,不返回返回值。
2、函數(shù)體:函數(shù)體沒(méi)有返回值。
三、調(diào)用不同
1、函數(shù):由主函數(shù)調(diào)用其他函數(shù),其他函數(shù)也可以互相調(diào)用。同一個(gè)函數(shù)可以被一個(gè)或多個(gè)函數(shù)調(diào)用任意多次。
2、函數(shù)體:函數(shù)體可以調(diào)用一個(gè)或多個(gè)函數(shù),但函數(shù)體之間不能互相調(diào)用。
在程序中出現(xiàn)函數(shù)名時(shí),要注意區(qū)分以下三種情況:
1. main函數(shù)中的int?max(int?x,int?y);?是函數(shù)的聲明,一般格式為?返回值?函數(shù)名(參數(shù)類型?參數(shù));
2. max(a,b)為函數(shù)的調(diào)用,一般格式為?函數(shù)名(參數(shù));
3. 后面的max(int?x,int?y){?...}是函數(shù)的定義,一般格式為?返回值?函數(shù)名(參數(shù)類型?參數(shù)){函數(shù)體}
c語(yǔ)言規(guī)定,在一個(gè)函數(shù)定義之前調(diào)用它,需要提前進(jìn)行聲明。
原因是,如果沒(méi)有聲明函數(shù),當(dāng)程序運(yùn)行到max(a,b)時(shí),由于后面的函數(shù)定義還沒(méi)有被讀到,所以計(jì)算機(jī)并不知道m(xù)ax是個(gè)什么東西,程序就會(huì)出錯(cuò)。
如果將函數(shù)定義提到main函數(shù)的前面,就無(wú)需進(jìn)行聲明了,程序也不會(huì)報(bào)錯(cuò)。
包括返回值,函數(shù)名,形參列表和函數(shù)體四個(gè)部分。
例如 :
int findmin(int a[],int n){
//函數(shù)體
return min;
}
以上函數(shù)int 是返回值,findmin是函數(shù)名, int a[] int n是形參列表