int is_leap_year(int year) {
return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
}
int:1 表真,0 表偽,符合 C 語言慣例。year 由呼叫端傳入,函數不負責輸入。#include <stdio.h>
int main() {
int year;
printf("請輸入年份: ");
scanf("%d", &year);
int result = is_leap_year(year);
if (result)
printf("%d 年是閏年\n", year);
else
printf("%d 年不是閏年\n", year);
return 0;
}
is_leap_year。scanf,導致難以測試與重用。void 返回型別卻需結果,只能靠全域變數或指標輸出,增加耦合。此範例展示良好的函數設計習慣,適用於所有類似判斷邏輯。