C語言之函式篇

2021-08-05 19:35:21 字數 1160 閱讀 9428

函式(function)是用於完成特定任務的程式**的自包含單元。

為什麼要使用函式?第一,函式的使用可以省去重複**的編寫。如果程式中需要多次使用某種特定的功能,那麼只需編寫乙個合適的函式即可。第二,即使某種功能在程式中只使用一次,將其以函式的形式實現也是有必要的,因為這使程式更加模組化,從而有利於程式的閱讀、修改和完善。

可以把函式看作「黑盒子」,即對一定的輸入會產生特定的結果或返回某個數值,而黑盒子的內部行為並不需要考慮,除非是該函式的編寫者(相對於函式的使用者)。例如,使用printf()函式時,只需向其傳遞乙個控制字串,或許還有其他一些引數,然後就可以**到printf()的執行結果,而無需了解printf()的內部**。以這種方式看待函式有助於把精力投入到程式整體設計而不是其實現細節。因此,編寫函式**之前首先需要考慮的是函式的功能以及函式和程式整體上的關係。

帶有引數的函式

假設有如下函式原型:

void my_func(int n);

上述函式原型表明my_func()接受乙個int型別的引數。宣告乙個引數就建立了乙個被稱為形式引數的變數。本例中,形式引數是叫做n的int型別變數。像my_func(10)這樣的函式呼叫會把10賦給n。稱函式呼叫傳遞乙個值,這個值被稱為實際引數。因此,函式呼叫my_func(10)把實際引數10傳遞給函式,然後函式把10賦給形式引數n。

函式中的變數名字是區域性的。這意味著在乙個函式裡定義的名字不會與其他地方相同的名字發生衝突。

如同函式內部定義的變數一樣,形式參量是區域性變數,它們是函式所私有的。

函式原型中可以省略變數名。在原型中使用變數名並沒有實際地建立變數。

#include

int main(void)

printf("accepting %0.1f:\n", score);

min = (score < min) ? score: min;

max = (score > max) ? score: max;

total += score;

n++;

printf("enter next score (q to quit): ");

}if (n > 0)

else

printf("no valid scores were entered.\n");

return 0;

}

C語言之函式

1.前導程式 2.函式概述 1 列印乙個信頭 2 include3 include 4 define name gigathink,inc.5 define address 101 megabuck plaza 6 define place megapolis,ca 94904 7 define w...

C語言之函式

函式是c語言學習中乙個重要的部分,可以說在開始學習c語言的時候懂得了函式的相關知識對學習c語言很重要特別是有信心上的幫助。下面寫乙個函式的例子,include int foo int num1,int num2 int main 在主函式中有三個臨時變數a,b,c。a和b已知,c被賦予以a和b為引數...

C語言之函式

函式基本格式 函式型別 函式名 定義形參 函式主體 函式的呼叫過程 1,通過函式名找到函式的入口位址 2,給形參分配空間 3,將實參的值傳遞給形參 4,執行函式體 5,返回函式值 void 函式五返回值 6,釋放空間 函式的引數傳遞 簡單變數作為函式引數 1 include 2 3 int main...