建立函數
格式 |
範例 |
回傳資料型態 函數名 (資料型態 參數1, 資料型態 參數2…..)
{
……..
return 計算結果;
} |
Int myfunction (int x,inty)
{
return (x*b);
} |
回傳資料型態:定義函數回傳值的資料型態,如無回傳值則訂為void
函數名:函數名稱
參數:呼叫函數所必須傳入的參數,須定義資料型態
return敘述:傳回函數運算結果,如無回傳值則不須使用
呼叫函數
無回傳值 |
有回傳值 |
函數名 (參數1,參數2,…..); |
變數 = 函數名 (參數1,參數2,…..); |
範例:
//函數建立與呼叫範例
#include <iostream.h>
int sum(int start, int end) //宣告函數的傳回值、名稱及傳入參數
{
int i, total = 0; //函數內使用變數的宣告
for (i = start ; i <= end ; i++) //進入迴圈
{
total = total + i; //每執行一次就把total的值加上i
}
return total; //傳回計算結果
} //函數結束void main() //主程式開始
{
cout << "1 加到 10 合計: " << sum(1,10) << "
.\n";
} //主程式結束 |
範例:函數原型宣告
//陣列原型宣告範例
#include <iostream.h>
int sum(int , int) ; //函數原型宣告
void main() //主程式開始
{
//int sum(int , int) ; 函數原型宣告,也可以放在這裡
cout << "總合為: " << sum(1,10) << " .\n";
} //主程式結束
int sum(int start, int end) //宣告函數的傳回值、名稱及傳入參數
{
int i, temp, total = 0; //函數內使用變數的宣告
if (end < start)//檢查傳入的計算起始值是否大於終值
{
temp = end; //若起始值大於終值,則將兩個值互換
end = start;
start = temp;
}for (i = start ; i <=
end ; i++)//進入迴圈
{
total = total + i; //每執行一次就把total的值加上i
}
return total; //傳回計算結果
} //函數結束 |
註:請自行練習修改程式,使程式能接受使用者自行輸入設定起始值與終值 |