標籤:
黑馬程式員------<a href="http://www.itheima.com" target="blank">Java培訓、Android培訓、iOS培訓、.Net培訓</a>、期待與您交流! -------
一 函數定義
01 函數分為庫函數和自訂函數兩種
函數一般格式:
函數傳回值類型 函數名(資料類型 參數1, 資料類型 參數2,……..)
{
函數體;
}
*函數若不需要傳回值類型,則用void表示
*函數的標誌是括弧,不管有沒有參數,括弧都要存在
*定義函數時,右括弧後不應加分號
*不要在函數列表中再次定義參數列表中出現的變數
*多個參數之間用逗號隔開,即使資料類型相同,也不能同時聲明,即資料類型和參數必須成對出現
// 求運算式k!/(M!+N!)的值#include <stdio.h>double fact(int f){ int i; double r = 1; for (i=1; i<f;i++) { r = r*i; return r; }}int main(){ int k,m,n; double f1,f2,f3; printf("請輸入三個整數:\n"); scanf("%d%d%d",&k,&m,&n); f1 = fact(k); f2 = fact(m); f3 = fact(n); printf("k!/(M!+N!)=%f\n",f1/(f2+f3)); }
二 函數調用
01函數調用的一般形式:
函數名(實際參數表) 如果被調用函數沒有參數,則“實際參數表可以為空白”
02 函數間的參數傳遞
C語言的規則很簡單,C語言函數的所有參數均以“傳值調用”方式進行傳遞,且參數傳遞方向永遠是從實參傳遞到形參。
03 函數的傳回值
return 運算式;
return語句的功能是立即結束當前函數的執行,並返回主調函數中。
// 輸入兩個整數,計算其平均值,要求用函數實現平均值的計算#include <stdio.h>double average(int x,int y);int main(){ int a,b; double result; printf("請輸入兩個整數:\n"); scanf("%d%d",&a,&b); result = average(a,b); printf("%d和%d的平均值為%f\n",a,b,result); return 0;}double average(int x,int y){ double ave; ave = (x+y)/2; return ave;}
09-黑馬程式員------C 語言學習筆記--- C語言函數