無返回值的函數(shù),只進(jìn)行某種操作。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了新源免費(fèi)建站歡迎大家使用!
有返回值的函數(shù),可以將某個變量或指針返回其調(diào)用函數(shù)。
兩者形式上的區(qū)別如下:
無返回值:void
fun1();
有返回值:int
fun2();
調(diào)用的區(qū)別:
無返回值:
main()
{
……
fun1();
……
}
有返回值:
main()
{
int
a;
……
a=fun2();
……
}
不是必須有返回值。如果沒有返回值類型名為"void"。
void函數(shù)的定義:
void+函數(shù)名()//無類型+函數(shù)名
{//?程序代碼
}
如果沒有返回值類型名為"void", 整數(shù)類型int 類型返回值為整數(shù)類型int,以此類推……
類型名有:void int long float int* long* float* ……
擴(kuò)展資料:
需要說明的是:
1、一個C語言源程序可以由一個或多個源文件組成。
2、每個源文件可由一個或多個函數(shù)組成。
3、一個源程序不論由多少個文件組成,都有一個且只能有一個main函數(shù),即主函數(shù)。是整個程序的入口。
4、源程序中可以有預(yù)處理命令(包括include 命令,ifdef、ifndef命令、define命令),預(yù)處理命令通常應(yīng)放在源文件或源程序的最前面。
5、每一個說明,每一個語句都必須以分號結(jié)尾。但預(yù)處理命令,函數(shù)頭和花括號“}”之后不能加分號。(結(jié)構(gòu)體、聯(lián)合體、枚舉型的聲明的“}”后要加“ ;”。)
6、標(biāo)識符,關(guān)鍵字之間必須至少加一個空格以示間隔。若已有明顯的間隔符,也可不再加空格來間隔。
參考資料:
百度百科-函數(shù)
遞歸函數(shù)myPower的定義有邏輯錯誤,改成:
double myPower(int a,int b)
{
if(0==b) return 1;
return a*myPower(a,b-1);
}
如果改成這樣,會更高效:
double myPower(int a,int b)
{
if(0==b) return 1;
if(1==b) return a;
return myPower(a,b%2)*myPower(a*a,b/2);
}
例子1
#include stdio.h
double myPower(int a,int b)
{
if(0==b) return 1;
return a*myPower(a,b-1);
}
int main()
{
int a=2,b;
for(b=0;b11;b++)
printf("%lf\n",myPower(a,b));
return 0;
}
例子2
#include stdio.h
double myPower(int a,int b)
{
if(0==b) return 1;
if(1==b) return a;
return myPower(a,b%2)*myPower(a*a,b/2);
}
int main()
{
int a=3,b;
for(b=0;b11;b++)
printf("%lf\n",myPower(a,b));
return 0;
}
無返回值的函數(shù),只進(jìn)行某種操作。\x0d\x0a有返回值的函數(shù),可以將某個變量或指針返回其調(diào)用函數(shù)。\x0d\x0a\x0d\x0a兩者形式上的區(qū)別如下:\x0d\x0a無返回值:void fun1();\x0d\x0a有返回值:int fun2();\x0d\x0a\x0d\x0a調(diào)用的區(qū)別:\x0d\x0a無返回值:\x0d\x0amain()\x0d\x0a{\x0d\x0a??\x0d\x0afun1();\x0d\x0a??\x0d\x0a}\x0d\x0a有返回值:\x0d\x0amain()\x0d\x0a{\x0d\x0aint a;\x0d\x0a??\x0d\x0aa=fun2();\x0d\x0a??\x0d\x0a}