C語言範例教學:max() — 傳回最大值

在程式設計中,我們常常需要比較兩個數值,找出其中較大的那一個。 C 語言雖然提供許多標準函式,但並沒有直接內建 max() 函式,因此我們可以自己撰寫一個簡單又實用的版本。


一、max() 函式介紹

max() 是一個自訂函式 (user-defined function),用來比較兩個整數,並回傳其中的最大值。 這樣的函式可以讓程式碼更簡潔、可重複使用,也更容易閱讀。


二、程式範例

#include <stdio.h>

// 宣告並定義 max() 函式

int max(int a, int b) {

return (a > b) ? a : b;

}

int main(void) {

printf(“max(3, 7) = %d\n”, max(3, 7));

return 0;

}


三、程式解析

(1) #include <stdio.h>

引入標準輸出入函式庫,讓我們能使用 printf() 來輸出結果。

(2) int max(int a, int b)

這是 max() 函式的定義,代表它接受兩個整數參數 ab,並回傳一個整數結果。

(3) return (a > b) ? a : b;

這一行使用了三元運算子 (ternary operator)

(條件) ? (條件為真時的值) : (條件為假時的值)

意思是:

  • 如果 a > b,就回傳 a
  • 否則回傳 b

這樣比用 if 判斷更簡潔。

(4) printf("max(3, 7) = %d\n", max(3, 7));

呼叫 max() 函式,並將結果以格式化輸出顯示在螢幕上。


四、執行結果

max(3, 7) = 7


五、延伸應用

這個 max() 函式也可以用於:

  • 比較浮點數(改成 double max(double a, double b)
  • 比較陣列中的最大值(搭配 for 迴圈)
  • 甚至可擴充成多值比較的版本

六、重點整理

項目說明
函式名稱max()
功能傳回兩數中的最大值
運算方式使用三元運算子 (a > b) ? a : b
輸入兩個整數
輸出最大的整數值

結語

max() 雖然是一個簡單的函式,但它是理解條件運算子函式設計概念的好例子。 初學者可以藉由這個範例學會:

  • 如何建立並呼叫自訂函式
  • 如何運用三元運算子簡化條件判斷
  • 如何讓程式更具模組化與可讀性

Similar Posts