先回答下第一個(gè)問題,子函數(shù)的實(shí)現(xiàn)方法可以放在使用它的主函數(shù)或者其它子函數(shù)后面,但是你的定義一定要在使用它之前;不然編譯器怎么知道你用的函數(shù)square是什么,這就是我們經(jīng)常包含頭文件的一個(gè)目的,頭文件是一些函數(shù)定義或者預(yù)編譯命令。
我們提供的服務(wù)有:成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、宣恩ssl等。為近千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的宣恩網(wǎng)站制作公司
修改是在#includestdio.h后面加
int square(int num);
第二個(gè)問題:num是在main定義是可以在main作用域內(nèi)直接使用,或者當(dāng)做參數(shù)傳遞給子函數(shù),你的問題num為什么可以在子函數(shù)中用,首先你子函數(shù)的num并非main里的num只是你把他們名字寫成一樣了;main里num是通過值傳遞給子函數(shù)的num,實(shí)際他們兩個(gè)num的內(nèi)存地址是不一樣的,你子函數(shù)換個(gè)名字去理解一下。
C語言規(guī)定,返回值是int型的可以省略int關(guān)鍵字。如果子函數(shù)定義在調(diào)用函數(shù)后面,則在調(diào)用函數(shù)內(nèi)部或其前面應(yīng)對被調(diào)用函數(shù)加以聲明,但int類型的函數(shù)可以例外。函數(shù)聲明時(shí)不需要給出變量名,只要給出其類型就可以了(所以括號(hào)里的 int 和 int k 是一樣的)。其實(shí)8.15有錯(cuò)誤,int add(void)后面少了分號(hào),你照樣寫當(dāng)然也錯(cuò)了,要加分號(hào)的。
在y!=0的情況下,fun會(huì)調(diào)用自己,要等y=0后,一層層往上。就到到fun(1)的時(shí)候再會(huì)執(zhí)行printf("%d",d);putchar('\n');然后會(huì)執(zhí)行fun(y*2+d)后面的,printf("%d",d);putchar('\n'),然后再往上,,,直到你最初的fun(n)后面的printf("%d",d);putchar('\n')。
你可以在printf("%d",d),后面加一個(gè)printf("n
=
%d\n",
n);
可以看到如下結(jié)果
8
n
=
1
1
n
=
2
n
=
4
n
=
8
可以放在main()函數(shù)后面,需要在mian()函數(shù)前面做個(gè)函數(shù)申明。
在一個(gè)源文件中定義函數(shù)且在另一個(gè)文件中調(diào)用函數(shù)時(shí),函數(shù)聲明是必需的。在這種情況下,應(yīng)該在調(diào)用函數(shù)的文件頂部聲明函數(shù)。如:
#include stdio.h
/* 函數(shù)聲明 */
int max(int num1, int num2);
int main (){......
函數(shù)聲明會(huì)告訴編譯器函數(shù)名稱及如何調(diào)用函數(shù)。函數(shù)的實(shí)際主體可以單獨(dú)定義。
函數(shù)聲明包括以下幾個(gè)部分:
return_type function_name( parameter list );
擴(kuò)展資料:
C語言書寫規(guī)則:
1、一個(gè)說明或一個(gè)語句占一行。
2、用{} 括起來的部分,通常表示了程序的某一層次結(jié)構(gòu)。{}一般與該結(jié)構(gòu)語句的第一個(gè)字母對齊,并單獨(dú)占一行。
3、低一層次的語句或說明可比高一層次的語句或說明縮進(jìn)若干格后書寫。以便看起來更加清晰,增加程序的可讀性。在編程時(shí)應(yīng)力求遵循這些規(guī)則,以養(yǎng)成良好的編程風(fēng)格。
參考資料:
百度百科-函數(shù)
不用、要是寫在main函數(shù)之后、則需要在man函數(shù)前面加一條聲明語句例如: int max(int x,int y) ;//在之后則要有這條聲明語句否則報(bào)錯(cuò),注意最后的分號(hào)一定有有 void main() { …… } int max(int x,int y) { …… }自定義函數(shù)在主函數(shù)之后則要加聲明語句、在前面就不用加