函數(shù)的引入
引入函數(shù)可以把一個復雜的任務分解為子任務,每一個子任務都是一個較小的功能模塊,通過實現(xiàn)這些小功能模塊來實現(xiàn)復雜的問題,從而使得比較復雜的問題變得簡單。
函數(shù)的意義
品牌網(wǎng)站建設, 每一個C程序中包含一個main()函數(shù)和若干個其他函數(shù)。程序的執(zhí)行永遠是從main()函數(shù)開始的,如果主函數(shù)中調(diào)用了其他函數(shù),那么調(diào)用完其他函數(shù)之后任會回到main函數(shù),程序在main()函數(shù)結(jié)束的時候結(jié)束。
對于網(wǎng)站建設公司來講,C語言中,所有函數(shù)之間是平行關系,任何函數(shù)都不隸屬于任何一個函數(shù),每個函數(shù)定義是獨立進行的,所以函數(shù)不可以嵌套定義。函數(shù)之間可以相互調(diào)用,也可以嵌套調(diào)用。函數(shù)還可以調(diào)用自己本身,也就是我們平時所說的遞歸調(diào)用。有一點需要注意的是main()函數(shù)為主函數(shù),不允許被其他函數(shù)調(diào)用。
函數(shù)設計原則
1.函數(shù)功能的獨立性
每一個函數(shù)應該只實現(xiàn)一個特定的功能,不能在此函數(shù)中實現(xiàn)其它功能,這樣才能在主函數(shù)中調(diào)用這個函數(shù),不然可能會對其它函數(shù)造成影響。每個函數(shù)中最好使用局部變量,以免收到外部數(shù)據(jù)的影響。
2.函數(shù)的層次不能過多
簡單的說就是嵌套調(diào)用的函數(shù)層次不要太多。
函數(shù)的分類
1.庫函數(shù)
庫函數(shù)就是C編譯系統(tǒng)定義好的函數(shù),都是一些經(jīng)常用到的函數(shù),我們直接調(diào)用即可,例如一些數(shù)學計算函數(shù),求絕對值函數(shù)fabs()、求平方根函數(shù)sqrt函數(shù)都是屬于庫函數(shù)。
不同的函數(shù)包含在不同的文件中,程序中如果要使用某函數(shù),必須將包含該函數(shù)的頭文件使用#include編譯預處理命令包含到程序中。
2.用戶自定義函數(shù)
由程序員自己編寫的一段代碼,可完成某種功能。
函數(shù)的定義
C語言中,根據(jù)函數(shù)的形式,函數(shù)可分為無參數(shù)函數(shù)和有參數(shù)函數(shù)。
函數(shù)的分類
無參數(shù)函數(shù)的一般定義形式 無參數(shù)函數(shù)是沒有形參的函數(shù),無參函數(shù)被調(diào)用時,調(diào)用函數(shù)不需要向無參函數(shù)傳入數(shù)據(jù).函數(shù)執(zhí)行完成后不向調(diào)用者返回函數(shù)值。
例如:
2.有參數(shù)函數(shù)的一般定義形式
有參函數(shù)與無參函數(shù)的區(qū)別就是多了一個參數(shù)表,調(diào)用有參函數(shù)時,調(diào)用函數(shù)對這些參數(shù)賦予了具體的值。定義形式如下:
例如:
其中,max()函數(shù)是一個有參函數(shù),當main()函數(shù)調(diào)用max()函數(shù)時,必須將max()函數(shù)所需要的參數(shù)的值傳入。
說明
從上面兩個例子可以看出,一個函數(shù)是由函數(shù)說明部分和函數(shù)體構(gòu)成的。
(1)函數(shù)說明部分
函數(shù)說明部分包括類型標識符、函數(shù)名、參數(shù)表及參數(shù)類型等。
(2)函數(shù)體
函數(shù)體是函數(shù)的語句執(zhí)行部分,也是由兩部分組成:說明語句部分和可執(zhí)行語句部分。
說明語句:主要包括聲明語句、聲明變量、數(shù)組、指針
可執(zhí)行語句:是完成函數(shù)功能的執(zhí)行語句。
(3)函數(shù)定義不允許嵌套
在一個函數(shù)的函數(shù)體內(nèi),不能在定義另外一個函數(shù)。
廣州天河區(qū)珠江新城富力盈力大廈北塔2706
020-38013166(網(wǎng)站咨詢專線)
400-001-5281 (售后服務熱線)
深圳市坂田十二橡樹莊園F1-7棟
Site/ http://www.szciya.com
E-mail/ itciya@vip.163.com
品牌服務專線:400-001-5281
長沙市天心區(qū)芙蓉中路三段398號新時空大廈5樓
聯(lián)系電話/ (+86 0731)88282200
品牌服務專線/ 400-966-8830
旗下運營網(wǎng)站:
Copyright ? 2016 廣州思洋文化傳播有限公司,保留所有權(quán)利。 粵ICP備09033321號