全國計算機等級考試培訓(xùn)教材(二級C)課件 ch08 函數(shù)_第1頁
全國計算機等級考試培訓(xùn)教材(二級C)課件 ch08 函數(shù)_第2頁
全國計算機等級考試培訓(xùn)教材(二級C)課件 ch08 函數(shù)_第3頁
全國計算機等級考試培訓(xùn)教材(二級C)課件 ch08 函數(shù)_第4頁
全國計算機等級考試培訓(xùn)教材(二級C)課件 ch08 函數(shù)_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

計算機等級考試第八章函數(shù)高等院校公共課系列精品教材函數(shù)01ONE8.1函數(shù)考點1函數(shù)的概述C語言的函數(shù)是具有一定功能的代碼的集合。對于C語言的函數(shù)有以下幾點需要注意。(1)C源程序是由函數(shù)組成的,函數(shù)由函數(shù)首部與函數(shù)體組成,函數(shù)體包括聲明部分和執(zhí)行語句部分。(2)C語言程序可以由多個源程序組成,其中一個源程序文件包含main函數(shù),其他函數(shù)可以寫在另外的源程序文件中,為單獨文件,并可以單獨編譯。(3)C程序的執(zhí)行總是從main函數(shù)開始的,完成對其他函數(shù)的調(diào)用后再返回到main函數(shù),最后由main函數(shù)結(jié)束整個程序。4)main函數(shù)可以調(diào)用其他函數(shù),而不允許被其他函數(shù)調(diào)用。一個C源程序必須有,也只能有一個主函數(shù)main。(5)在一個函數(shù)的函數(shù)體內(nèi),不能再定義另一個函數(shù),即不能嵌套定義。定義函數(shù)02TWO8.2定義函數(shù)考點2

函數(shù)的定義函數(shù)定義的基本格式:類型名函數(shù)名(數(shù)據(jù)類型形式參數(shù)1,數(shù)據(jù)類型形式參數(shù)2……){函數(shù)體}說明:(1)類型名。定義函數(shù)返回值類型,可以是任何數(shù)據(jù)類型,如整型、字符型、結(jié)構(gòu)體等,默認(rèn)值為int,也可沒有返回值,則為void類型。(2)函數(shù)名。合法標(biāo)識符,表明函數(shù)的名稱,一般做到見名知意。(3)形參列表。參數(shù)用逗號分開,定義時形參需要明確數(shù)據(jù)類型。如果沒有參數(shù),此次可以為void或省略。(4)函數(shù)體。一般包括說明部分和執(zhí)行語句部分。此次可以為空,則為空函數(shù),空函數(shù)當(dāng)下沒有具體功能,但對程序擴展很有用。8.2定義函數(shù)考點3函數(shù)的返回值函數(shù)返回return語句的一般形式:return表達式或return(表達式);return后的表達式可以是常量、變量、表達式,也可以是空。例如:return;return0;returna;return(a+b);在函數(shù)中允許有多個return語句,但每次只能有一個return語句被執(zhí)行。函數(shù)參數(shù)與函數(shù)調(diào)用03THREE8.3函數(shù)參數(shù)與函數(shù)調(diào)用考點4形參和實參1.形參與實參的區(qū)別(1)形參出現(xiàn)在函數(shù)定義中,即定義函數(shù)時函數(shù)名后面括號中的參數(shù),實參出現(xiàn)在主調(diào)函數(shù)中(調(diào)用函數(shù)時函數(shù)名后面括號中的參數(shù))(2)形參在本函數(shù)體內(nèi)都可以使用,離開該函數(shù)則不能使用。實參在主調(diào)函數(shù)中有效,進入被調(diào)函數(shù)后,實參變量也不能使用(注:在進行函數(shù)調(diào)用時,函數(shù)必須有確定的值)。(3)實參向形參單向傳遞數(shù)值,不能將形參的值反向傳送給實參。實參和形參在數(shù)據(jù)、類型、順序上要一致。在函數(shù)調(diào)用過程中,形參的變化不會改交實參的變化。8.3函數(shù)參數(shù)與函數(shù)調(diào)用考點4形參和實參2.函數(shù)參數(shù)有兩種類型:值傳遞和地址傳遞(1)在傳遞數(shù)值時,形參和實參分別占據(jù)不同的存儲單元。形參變量只有在被調(diào)用時才分配內(nèi)存單元,調(diào)用結(jié)束后,即刻釋放分配的內(nèi)存單元。(2)“傳值”與“傳址”的區(qū)別:傳數(shù)值的話,形參的變化不會改變實參的變化;傳地址的話,形參的變化就有可能改變實參所對應(yīng)的量。8.3函數(shù)參數(shù)與函數(shù)調(diào)用考點5

函數(shù)調(diào)用的一般形式和調(diào)用方式(1)函數(shù)調(diào)用的一般形式:函數(shù)名(實際參數(shù)表)實參可以是常數(shù)、變量或其他構(gòu)造類型數(shù)據(jù)及表達式,也可以沒有(當(dāng)為無參函數(shù)時)。①函數(shù)表達式:函數(shù)作為表達式中的一項出現(xiàn)在表達式中,以函數(shù)返回值參與表達式運算。例如:z=max(x,y);②數(shù)語句:函數(shù)調(diào)用的一般形式上加上分號。例如:printf(“%d\n",a);③函數(shù)實參:函數(shù)作為另一個函數(shù)調(diào)用的實際參數(shù)出現(xiàn)。例如:printf(“%d",max(x,y));執(zhí)行順序如下。程序從main函數(shù)進入,從上往下執(zhí)行,當(dāng)碰到函數(shù)名后,把值傳給調(diào)用函數(shù),當(dāng)程序得到了返回值或調(diào)用函數(shù)結(jié)束,再順序往下執(zhí)行,最后到main函數(shù)結(jié)束。8.3函數(shù)參數(shù)與函數(shù)調(diào)用考點6函數(shù)的聲明及其位置考點7函數(shù)的嵌套調(diào)用函數(shù)要“先定義后調(diào)用”,或者“先聲明再調(diào)用后定義”。函數(shù)的聲明一定要有函數(shù)名、函數(shù)返回値類型、函數(shù)參數(shù)類型,但不一定有形參的名稱。一般形式為:類型說明符被調(diào)函數(shù)名(類型形參,類型形參……);或者類型說明符被調(diào)函數(shù)名(類型,類型……);注意:其末尾“;”不能省略。例如,intmax(inta,intb);或intmax(int,int);兩者功能相同。C語言中不允許做嵌套的函數(shù)定義,但允許在一個函數(shù)中出現(xiàn)對另一個函數(shù)的調(diào)用,即嵌套調(diào)用。8.3函數(shù)參數(shù)與函數(shù)調(diào)用考點8函數(shù)的遞歸調(diào)用函數(shù)直接或間接地調(diào)用自己稱為函數(shù)的遞歸調(diào)用。遞歸必須滿足的條件如下。(1)可以把一個問題轉(zhuǎn)化為新問題。(2)遞歸調(diào)用必須有一個明確的結(jié)束條件。變量的作用域或存儲類別04FOUR8.4變量的作用域和存儲類別考點9局部變量和全局變量1.局部變量在一個函數(shù)內(nèi)部或復(fù)合語句內(nèi)部定義的變量,它只在本函數(shù)范圍內(nèi)有效,世就是說,只有在本函數(shù)內(nèi)才能使用它們,在函數(shù)以外是不能使用這些變量的。這稱為局部變量,局部變量又稱為內(nèi)部變量。函數(shù)的形參也屬于局部變量。2.全局變量在函數(shù)外部定義的變量,稱為全局變量,又稱為外部變量。全局變量可以被本文件的其他函數(shù)所共用。8.4變量的作用域和存儲類別考點10

變量存儲類別1.靜態(tài)變量(static)(1)在編譯時分配存儲空間,所占存儲單元直到程序結(jié)束時才釋放,它的值在程序運行過程中一直存在,且變量的初始化只進行一次。(2)static說明符可以用于全局變量,也可以用于局部變量(auto和resgiter不可以定義全局變量),但當(dāng)它說明變量后,只要這個變量還在程序中存在,那么不管用到還是沒有用到,它都會占用內(nèi)存單元。2.自變量(auto)(1)自動變量的存儲空間是當(dāng)程序執(zhí)行到定義它的函數(shù)或語句塊時才分配,當(dāng)函數(shù)執(zhí)行結(jié)束后自動釋放,變量的值也就不再存在了。(2)局部變量的存儲類別默認(rèn)為auto,可以省略不寫,但它不能定義全局變量。3.寄存器變量(register)數(shù)組與函數(shù)05FIVE8.5數(shù)組與函數(shù)考點11

數(shù)組與函數(shù)(1)數(shù)組用作西數(shù)參數(shù)有兩種形式:把數(shù)組元素(下標(biāo)交量)作為實參使用和把數(shù)組名作為函數(shù)的形參和實參使用。(2)數(shù)組元素用作函數(shù)的實參與普通變量并無區(qū)別,所進行的傳遞是值,形參變量和實參變量占據(jù)由編譯系統(tǒng)分配的兩個不同的內(nèi)存單元。(3)數(shù)組名作為函數(shù)參數(shù)時,所進行的傳遞是地址(相當(dāng)于把實參數(shù)組的首地址賦子形參數(shù)組名或指針名),形參數(shù)組與實參數(shù)組為同一數(shù)組,共同

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論