![C語言程序設(shè)計_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/8/46538e63-1fed-4c13-bc94-fad6d2fd0bea/46538e63-1fed-4c13-bc94-fad6d2fd0bea1.gif)
![C語言程序設(shè)計_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/8/46538e63-1fed-4c13-bc94-fad6d2fd0bea/46538e63-1fed-4c13-bc94-fad6d2fd0bea2.gif)
![C語言程序設(shè)計_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/8/46538e63-1fed-4c13-bc94-fad6d2fd0bea/46538e63-1fed-4c13-bc94-fad6d2fd0bea3.gif)
![C語言程序設(shè)計_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/8/46538e63-1fed-4c13-bc94-fad6d2fd0bea/46538e63-1fed-4c13-bc94-fad6d2fd0bea4.gif)
![C語言程序設(shè)計_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/8/46538e63-1fed-4c13-bc94-fad6d2fd0bea/46538e63-1fed-4c13-bc94-fad6d2fd0bea5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、2005年3月12005年3月22005年3月3C程序程序源程序文件源程序文件n函數(shù)函數(shù)1函數(shù)函數(shù)m 源程序文件源程序文件1函數(shù)函數(shù)1函數(shù)函數(shù)n2005年3月4程序運行情況如下:程序運行情況如下:Enter an integer number:2 2 * 2 * 2 = 8程序的執(zhí)行總是程序的執(zhí)行總是從從main函數(shù)開始函數(shù)開始2005年3月5 一個一個C源程序可以由一個或多個源程序文件組源程序可以由一個或多個源程序文件組成。成。C編譯系統(tǒng)在對編譯系統(tǒng)在對C源程序進(jìn)行編譯時是以文件源程序進(jìn)行編譯時是以文件為單位進(jìn)行的。為單位進(jìn)行的。 一個一個C源程序文件可以由一個或多個函數(shù)組成。源程序文件可以
2、由一個或多個函數(shù)組成。所有函數(shù)都是獨立的。主函數(shù)可以調(diào)用其它函數(shù),所有函數(shù)都是獨立的。主函數(shù)可以調(diào)用其它函數(shù),其它函數(shù)可以相互調(diào)用。其它函數(shù)可以相互調(diào)用。 在一個在一個C程序中,有且僅有一個主函數(shù)程序中,有且僅有一個主函數(shù)main。C程序的執(zhí)行總是從程序的執(zhí)行總是從main函數(shù)開始,調(diào)用其它函數(shù)函數(shù)開始,調(diào)用其它函數(shù)后最終回到后最終回到main函數(shù),在函數(shù),在main函數(shù)中結(jié)束整個程函數(shù)中結(jié)束整個程序的運行。序的運行。2005年3月62005年3月72005年3月8函數(shù)類型函數(shù)類型 函數(shù)名函數(shù)名( (類型名類型名 形式參數(shù)形式參數(shù)1, ) ) 說明語句說明語句 執(zhí)行語句執(zhí)行語句 例如:求兩個數(shù)
3、的最大值。例如:求兩個數(shù)的最大值。 int max(int x,int y) int z; z = x y ? x : y; return( z );類型省略時類型省略時默認(rèn)為默認(rèn)為int類型類型沒有形式參數(shù)沒有形式參數(shù)為為無參函數(shù)無參函數(shù) 2005年3月9int max(x,y) int x,y;或或int max(int x,y) 形參也可以這樣定義形參也可以這樣定義 2005年3月10函數(shù)名(實參表列)函數(shù)名(實參表列)在在C語言中,把函數(shù)調(diào)用也作為一個表達(dá)式。語言中,把函數(shù)調(diào)用也作為一個表達(dá)式。因此凡是表達(dá)式可以出現(xiàn)的地方都可以出現(xiàn)函數(shù)因此凡是表達(dá)式可以出現(xiàn)的地方都可以出現(xiàn)函數(shù)調(diào)用。例
4、如:調(diào)用。例如: welcome( ); if (iabs (a)max) max=iabs(a); m=max(c,max(a,b);函數(shù)調(diào)用的一般形式:函數(shù)調(diào)用的一般形式:2005年3月11程序輸出結(jié)果:程序輸出結(jié)果:5050思思考:考:兩兩個個程程序序有有何何不不同同程序輸出結(jié)果:程序輸出結(jié)果:50502005年3月12void swap(int x, int y) int z; z=x; x=y; y=z; printf(nx=%d,y=%d,x ,y);main( ) int a= 10,b=20; swap(a,b); printf(na=%d,b=%dn,a,b);程序輸出結(jié)果:
5、程序輸出結(jié)果:x=20,y=10a=10,b=20形式參數(shù)(形參)形式參數(shù)(形參)【例例7.4】編一程序,將主函數(shù)中的兩個變量的值傳編一程序,將主函數(shù)中的兩個變量的值傳遞給遞給swap函數(shù)中的兩個形參,交換兩個形參的值。函數(shù)中的兩個形參,交換兩個形參的值。單向值傳遞單向值傳遞2005年3月13 當(dāng)函數(shù)被調(diào)用時才給形參分配內(nèi)存單元。調(diào)用結(jié)當(dāng)函數(shù)被調(diào)用時才給形參分配內(nèi)存單元。調(diào)用結(jié)束,所占內(nèi)存被釋放。束,所占內(nèi)存被釋放。 實參可以是常量、變量或表達(dá)式,但要求它們有實參可以是常量、變量或表達(dá)式,但要求它們有確定的值。確定的值。 實參與形參類型要一致,字符型與整型可以兼容實參與形參類型要一致,字符型與
6、整型可以兼容。 實參與形參的個數(shù)必須相等。在函數(shù)調(diào)用時,實實參與形參的個數(shù)必須相等。在函數(shù)調(diào)用時,實參的值賦給與之相對應(yīng)的形參。參的值賦給與之相對應(yīng)的形參。“單向值傳遞單向值傳遞”。2005年3月142005年3月152005年3月162005年3月17思考:思考:若要得到單精度實型的圓面積,程序應(yīng)如何修改若要得到單精度實型的圓面積,程序應(yīng)如何修改程序運行情況如下:程序運行情況如下:2 122005年3月18void swap(int x, int y) main( ) swap(a,b); 2005年3月192005年3月202005年3月21圖圖 7.2 驗證哥德巴赫猜想驗證哥德巴赫猜想輸
7、入輸入n的值的值 for (a=6; a=n; a+=2) for(b=3;b=a/2;b+=2) b是素數(shù)是素數(shù) ? T F c=a-b c是素數(shù)?是素數(shù)? T F 輸出:輸出: a、b、c的值的值 break;2005年3月22/* 窮舉法判斷素數(shù)窮舉法判斷素數(shù) */int prime(int n) int i; for (i=2; i0)n2005年3月37程序運行情況如下:程序運行情況如下:2,10 10242005年3月382005年3月392005年3月402005年3月412005年3月42程序運行情況如下:程序運行情況如下:15613 15613=(36375)82005年3月
8、432005年3月442005年3月45全局變量全局變量():在):在函數(shù)外部函數(shù)外部定義的定義的變量。變量。作用域作用域:。如在其作用域內(nèi)的函數(shù)或分程序中定。如在其作用域內(nèi)的函數(shù)或分程序中定義了同名局部變量,則在局部變量的作用域義了同名局部變量,則在局部變量的作用域內(nèi),同名全局變量暫時不起作用。內(nèi),同名全局變量暫時不起作用?!纠?.20】全局變量和局部變量的作用域。全局變量和局部變量的作用域。2005年3月462005年3月472005年3月48變量的屬性2005年3月49 1自動變量(自動變量(auto類別)類別) 局部變量可以定義為自動變量。局部變量可以定義為自動變量。main()in
9、t x,y; main()auto int x,y; 等價等價可省2005年3月502005年3月51全局靜態(tài)變量(或稱外部靜態(tài)變量)全局靜態(tài)變量(或稱外部靜態(tài)變量)static int a; main( ) float x,y; f( ) static int b=1; 全局靜態(tài)變量全局靜態(tài)變量不能省2005年3月522005年3月53int c;static int a; main( ) float ; char s;f( ) static int b=1; 全局靜態(tài)變量全局靜態(tài)變量外部變量外部變量2005年3月54問題:問題:全局靜全局靜態(tài)變量態(tài)變量的作用的作用域可以域可以擴(kuò)展到擴(kuò)展到本
10、程序本程序的其它的其它文件嗎?文件嗎?2005年3月55注意:注意:外部變量聲明用關(guān)鍵字外部變量聲明用關(guān)鍵字externextern,而外部變量的,而外部變量的定義不能用定義不能用externextern,只能隱式定義。,只能隱式定義。定義外部變量時,系統(tǒng)要給變量分配存儲空間,定義外部變量時,系統(tǒng)要給變量分配存儲空間,而對外部變量聲明時,系統(tǒng)不分配存儲空間,而對外部變量聲明時,系統(tǒng)不分配存儲空間,只是讓編譯系統(tǒng)知道該變量是一個已經(jīng)定義過只是讓編譯系統(tǒng)知道該變量是一個已經(jīng)定義過的外部變量,與函數(shù)聲明的作用類似。的外部變量,與函數(shù)聲明的作用類似。2005年3月562005年3月572005年3月5
11、8【例例7.26】寄存器變量的使用。寄存器變量的使用。main( ) long int sum=0; register int i; for (i=1; i(Y)?(X):(Y)2005年3月68分兩次替換:分兩次替換:將宏名將宏名 替換成字符串替換成字符串 。用實參用實參a替換形參替換形參x,實參,實參b替換形參替換形參y。程序中的兩個程序中的兩個printf語句被展開為:語句被展開為:printf(%dn, (a)(b)?(a):(b); printf(%dn, (a+m)(b+n)?( a+m):( b+n);2005年3月69分兩次替換:分兩次替換: 用用 替換。替換。用用1+a+b替換替換x。printf語句被展開為:語句被展開為:printf(%dn, 1+a+b*(1+a+b-1);特別注意:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【部編版】七年級歷史上冊《秦統(tǒng)一中國》公開課 聽課評課記錄
- 人教版九年級數(shù)學(xué)上冊21.3.1《一元二次方程的根與系數(shù)的關(guān)系》聽評課記錄
- 2025年便攜式X?zé)晒夤庾V分析儀合作協(xié)議書
- 七年級第二學(xué)期工作總結(jié)
- 蘇科版數(shù)學(xué)七年級下冊8.1.1《同底數(shù)冪的乘法》聽評課記錄
- 公司職工食堂承包協(xié)議書范本
- 裝飾裝修勞務(wù)分包合同范本
- 2025年度新能源電站租賃誠意金合同
- 2025年度裝修施工現(xiàn)場安全監(jiān)督合同
- 二零二五年度航空航天設(shè)備采購合同知識產(chǎn)權(quán)保護(hù)及實施約定
- 2023年江蘇省南京市中考化學(xué)真題(原卷版)
- 建筑制圖與識圖教學(xué)課件:第八章 結(jié)構(gòu)施工圖
- 2023年湖北省襄陽市中考數(shù)學(xué)真題(原卷版)
- (高清版)DB15∕T 3585-2024 高標(biāo)準(zhǔn)農(nóng)田施工質(zhì)量評定規(guī)程
- 試油(氣)HSE作業(yè)指導(dǎo)書
- 2024年《動漫藝術(shù)概論》自考復(fù)習(xí)題庫(附答案)
- 2024年職業(yè)技能“大數(shù)據(jù)考試”專業(yè)技術(shù)人員繼續(xù)教育考試題庫與答案
- 新時代勞動教育教程(高校勞動教育課程)全套教學(xué)課件
- 2024年遼寧軌道交通職業(yè)學(xué)院單招職業(yè)適應(yīng)性測試題庫含答案
- 小升初數(shù)學(xué)總復(fù)習(xí)專題訓(xùn)練:平行四邊形的面積與梯形的面積
- 物業(yè)安全開工第一課課件
評論
0/150
提交評論