返回值類型 函數名(){
函數體
}
( )
不能少。{ }
包圍。int sum(){ int i, sum=0; for(i=1; i<=100; i++){ sum+=i; } return sum; }計算結果保存在變量
sum
中,通過return
語句返回。sum為int
型,所以返回值類型也必須為int
,要一一對應。return
是C語言中的一個關鍵字,只能用在函數中,用來返回處理結果。#include <stdio.h> int sum(){ int i, sum=0; for(i=1; i<=100; i++){ sum+=i; } return sum; } int main() { int a = sum(); printf("The sum is %d\n", a); return 0; }運行結果:
注意:main 是函數定義,不是函數調用。當可執行文件加載到內存後,系統從 main 函數開始執行,也就是說,系統會調用我們定義的 main 函數。
void hello(){ printf ("Hello,world \n"); //沒有返回值就不需要 return 語句 }
void
是C語言中的一個關鍵字,表示空類型或無類型,絕大部分情況下也就意味著沒有 return 語句。
返回值類型 函數名(參數列表){
函數體
}
int max(int a, int b){ if (a>b){ return a; }else{ return b; } }參數(Parameter)本質上也是變量,定義時要指明參數類型和參數名稱。參數列表中可以定義一個或多個參數,多個參數之間用逗號
,
分隔。參數列表中給出的參數可以在函數體中使用。int n = max(10, 20);也可以傳遞變量:
int a = 10, b = 20; int n = max(a, b);也可以整數和變量一起傳遞:
int a = 10; int n = max(a, 20);變量 n 得到的值都是20。
#include <stdio.h> int max(int a, int b){ if (a>b){ return a; }else{ return b; } } int main(){ int num1, num2, maxVal; printf("Input two numbers: "); scanf("%d %d", &num1, &num2); maxVal = max(num1, num2); printf("The max number: %d\n", maxVal); return 0; }運行結果:
a=num1; b=num2;return 語句可以有多個,可以在函數體的任意位置。在max中,根據 if 的判斷結果來執行不同的 return 語句。
int max(int a, int b){ int n = (a>b) ? a : b; return n; printf("Function is performed\n"); }第4行代碼是多余的,永遠沒有執行的機會。