# includestdio.h
創(chuàng)新互聯(lián)是一家專注于成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),商南網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:商南等地區(qū)。商南做網(wǎng)站價(jià)格咨詢:13518219792
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;
}
擴(kuò)展資料:
C程序是由一組變量或是函數(shù)的外部對(duì)象組成的。 函數(shù)是一個(gè)自我包含的完成一定相關(guān)功能的執(zhí)行代碼段。我們可以把函數(shù)看成一個(gè)“黑盒子”,只要將數(shù)據(jù)送進(jìn)去就能得到結(jié)果,而函數(shù)內(nèi)部究竟是如何工作的,外部程序是不知道的。外部程序所知道的僅限于輸入給函數(shù)什么以及函數(shù)輸出什么。函數(shù)提供了編制程序的手段,使之容易讀、寫(xiě)、理解、排除錯(cuò)誤、修改和維護(hù)。
C程序中函數(shù)的數(shù)目實(shí)際上是不限的,如果說(shuō)有什么限制的話,那就是,一個(gè)C程序中必須至少有一個(gè)函數(shù),而且其中必須有一個(gè)并且僅有一個(gè)以main為名的函數(shù),這個(gè)函數(shù)稱為主函數(shù),整個(gè)程序從這個(gè)主函數(shù)開(kāi)始執(zhí)行。
參考資料來(lái)源:百度百科-C語(yǔ)言
兩個(gè)可以放在同一目錄下,也可以放到不同的目錄下,前提是你在主函數(shù)文件中應(yīng)當(dāng)包含相應(yīng)的頭文件或C文件(路徑寫(xiě)對(duì)應(yīng),寫(xiě)完整就好)。
外部函數(shù)文件根據(jù)所寫(xiě)函數(shù)需要將對(duì)應(yīng)頭文件包含進(jìn)來(lái),stdio.h作為一個(gè)標(biāo)準(zhǔn)輸入輸出文件,只要你該外部文件內(nèi)涉及到輸入輸出等操作,就是必須要包含進(jìn)來(lái)的。
希望對(duì)你有所幫助!
有兩種理解.(1)庫(kù)函數(shù)是C語(yǔ)言的內(nèi)部函數(shù)或自帶函數(shù),外部函數(shù)即程序員自定函數(shù).
(2)凡加寫(xiě)了extern 的函數(shù)是外部函數(shù).
第一種理解好懂:
C語(yǔ)言的內(nèi)部函數(shù)指的是C語(yǔ)言自帶的函數(shù),無(wú)論是動(dòng)態(tài)鏈接的或靜態(tài)鏈接的. 這些函數(shù)通過(guò)C語(yǔ)言的頭文件定義了.
例如, sin(),cos()等數(shù)學(xué)函數(shù),在math.h中定義了,輸入輸出函數(shù) printf(),fgetc()在stdio.h中定義了,時(shí)間函數(shù)表time(),ctime()等在time.h中定義了.還有許多其他內(nèi)部函數(shù).編程時(shí),只要用#include 庫(kù)名.h寫(xiě)在編程頭部,程序中就可調(diào)用.
自定義函數(shù),就是用戶自己寫(xiě)的函數(shù).
第二種凡加寫(xiě)了extern 的函數(shù)是外部函數(shù):
自定義函數(shù)可以與程序的main()寫(xiě)在同一個(gè)文件中,也可以寫(xiě)在另一個(gè)文件中,這時(shí)你可能還另寫(xiě)自己的頭文件或者寫(xiě)extern....,告訴編譯器,main中用到的某某函數(shù)是"外部函數(shù)".
例如,main()在a.c中,自定義函數(shù)my_func()在a2.c中
a.c內(nèi)容:
#include stdio.h
extern float my_func(float a);
main()
{
printf("result=%f\n",my_func(2.0));
}
a2.c 內(nèi)容:
float my_func(float a)
{
return a;
}
編譯:
cl -c a.c [得到a.obj]
cl -c a2.c [得到a2.obj]
cl a.obj a2.obj [鏈接成a.exe]
運(yùn)行:
a.exe
得
result=2.000000
extern float my_func() 是外部說(shuō)明,告訴編譯,main()里的my_func是外部函數(shù),要通過(guò)鏈接(.obj)得到.
如果把my_func寫(xiě)在a.c里:
#include stdio.h
float my_func(float a){
retun a;
}
main()
{
printf("result=%f\n",my_func(2.0));
}
my_func() 就不是外部函數(shù).
編譯:
cl a.c [得a.exe]
運(yùn)行:
a.exe
得
result=2.000000
請(qǐng)使用預(yù)編譯指令 #include。加入外部文件,就可以使用外部文件的函數(shù)了。
#include放在代碼文件頭,用于告訴編譯器,文件中包含的頭文件,屬于預(yù)處理文件的一部分 。
語(yǔ)法為:
#include iostream.h (這句是程序編譯時(shí)搜索系統(tǒng)目錄文件)
#include “HName.h" (這句是程序編譯時(shí)搜索當(dāng)前項(xiàng)目的文件)
例如:
//函數(shù)實(shí)現(xiàn)??a.c文件:
int?add(int?x,?int?y){
return?x+y;
}
//主文件??main.c文件:
#include?stdio.h
#include?"a.c"???//引入外部函數(shù)
int?main(){
int?i;
i?=?add(1,2);
printf("%d",i);
return?0;
}
當(dāng)一個(gè)源程序由多個(gè)源文件組成時(shí),C語(yǔ)言根據(jù)函數(shù)能否被其它源文件中的函數(shù)調(diào)用,將函數(shù)分為內(nèi)部函數(shù)和外部函數(shù)。
如果在一個(gè)源文件中定義的函數(shù),只能被本文件中的函數(shù)調(diào)用,而不能被同一程序其它文件中的函數(shù)調(diào)用,這種函數(shù)稱為內(nèi)部函數(shù)。
定義一個(gè)內(nèi)部函數(shù),只需在函數(shù)類型前再加一個(gè)“static”關(guān)鍵字即可,如下所示:
static 函數(shù)類型 函數(shù)名(函數(shù)參數(shù)表){……}
在定義函數(shù)時(shí),如果沒(méi)有加關(guān)鍵字“static”,或冠以關(guān)鍵字“extern”,表示此函數(shù)是外部函數(shù):
[extern] 函數(shù)類型 函數(shù)名(函數(shù)參數(shù)表){……}
外部函數(shù)原型聲明要有extern
簡(jiǎn)單說(shuō),外部函數(shù)是用戶自定義函數(shù),該函數(shù)寫(xiě)在另一個(gè)文件里.
1、打開(kāi)C-Free,按ctrl+N創(chuàng)建一個(gè)新的文件。
2、然后開(kāi)始調(diào)用函數(shù)。
3、按F9進(jìn)行調(diào)試后發(fā)現(xiàn)沒(méi)有錯(cuò)誤。
4、按F5執(zhí)行程序。
5、輸入想要輸入的數(shù)字。
6、按ENTER鍵輸出結(jié)果,檢驗(yàn)符合結(jié)果,說(shuō)明函數(shù)調(diào)用成功。