C 語言中的閏年程式



判斷某一年是不是閏年有點兒難。我們通常假設如果年數能被 4 整除,那麼它就是閏年。但這不是唯一的判斷標準。一個年份是閏年當且僅當:-

  • 它能被 100 整除

    • 如果它能被 100 整除,那麼它還可以被 400 整除

  • 除了這一條,所有其他能被 4 整除的年份都是閏年。

讓我們來看看如何編寫一個程式來判斷一個年份是否為閏年。

演算法

此程式的演算法為 -

START
   Step 1 → Take integer variable year
   Step 2 → Assign value to the variable
   Step 3 → Check if year is divisible by 4 but not 100, DISPLAY "leap year"
   Step 4 → Check if year is divisible by 400, DISPLAY "leap year"
   Step 5 → Otherwise, DISPLAY "not leap year"
STOP

流程圖

我們可以為該程式繪製一個流程圖,如下所示 -

Leap Year Flowchart

虛擬碼

此演算法的虛擬碼應如下 -

procedure leap_year()
   
   IF year%4 = 0 AND year%100 != 0 OR year%400 = 0
      PRINT year is leap
   ELSE
      PRINT year is not leap
   END IF

end procedure

實施

此演算法的實施如下 -

#include <stdio.h>

int main() {
   int year;
   year = 2016;

   if (((year % 4 == 0) && (year % 100!= 0)) || (year%400 == 0))
      printf("%d is a leap year", year);
   else
      printf("%d is not a leap year", year);

   return 0;
}

輸出

程式的輸出應為 -

2016 is a leap year
simple_programs_in_c.htm
廣告
© . All rights reserved.