一把梭系列 ~ C語言範例 (0019) [函式(函數)簡介]
一把梭系列 ~ C語言範例 (0019) [函式(函數)簡介]
資料來源: https://openhome.cc/Gossip/CGossip/FunctionABC.html
線上執行: https://www.tutorialspoint.com/compile_c_online.php
★前言:

★主題:
函數就是當某些程式碼片段經常被重複使用,此時可以抽出成為獨立的個體以便重覆呼叫使用。
程式語言中函數被定義可以接受資料,並運行其中的算法,最後將結果傳回給花被他呼叫的程式,因此一函數的組成主要包括四個部份:
01.返回值
02.函式名稱
03.參數列
04.函式主體
上述前三者稱為函式宣告或函式原型(Function prototype),在C/C++規定如果函式是在 main 之後實作,必須在 main 之前進行宣告,否則會出現編譯錯誤。
另外程式設計師也會將同類型的函數都用獨立H與C檔案分別分類收藏管理,藉此方便日後使用與修改維護
★code
math.h
#ifndef MATH_H_INCLUDED #define MATH_H_INCLUDED int power2(int); int power(int, int); #endif // MATH_H_INCLUDED
math.c
#include "math.h"
int power2(int num)
{
return power(num, 2);
}
int power(int n, int p)
{
int r = 1;
int i = 0;
for(i = 0; i < p; i++) {
r *= n;
}
return r;
}
main.c
#include <stdio.h>
#include <stdlib.h>
#include "math.h"
int main(void)
{
int num = 0;
int p = 0;
printf("輸入數值:");
scanf("%d", &num);
printf("輸入次方:");
scanf("%d", &p);
printf("%d 平方:%d\n", num, power2(num));
printf("%d 的 %d 次方 %d\n", num, p, power(num, p));
return 0;
}
★結果:

★延伸說明/重點回顧:
01.個人經驗只要重複使用過三次的功能都應該把它變成函數