如何判斷閏年?
C語言如何判斷是閏年,閏年判斷條件
不等價,因為判斷閏年的標準是:1、能整除4且不能整除100 2、能整除400
你的意思是:
每4年有個閏年<——>1896是閏年,4年後1900也是閏年<——>除以4就是閏年
但嚴格上講,"每4年一個閏年"這說法不嚴謹。應該是四年一閏,百年不閏,四百年再閏。
為什麼呢?
1、產生閏年原因:地球繞太陽執行週期為365天5小時48分46秒(合365.24219天)即一回歸年(tropical year)。公曆的平年只有365日,比迴歸年短約0.2422 日,所餘下的時間約為四年累計一天,故四年於2月加1天,使當年的歷年長度為366日,這一年就為閏年。
2、但是,上面演算法又有了一個問題。就是0.2422*4=0.9688,比一天還差0.0322天,每4年差0.0322天不算多,但每400年就會差了約3天。即是說,假如每4年一個閏年,那麼每400年就會有100個閏年,然後會多算了3天。
所以,就規定了每四百年中要減少三個閏年。公曆年份是整百數的,必須是400的倍數的才是閏年,不是400的倍數的,雖然是100的倍數,也是平年。
綜合以上2點,就有了現有的閏年判斷標準。
C語言 判斷閏年
scanf("%d",&year);這掉了一個&
怎樣判斷某一年裡閏年還是平年?
公元年數可 被4整除 為閏年,但是正百的年數必須是可以被400 整除的才是 閏年。其他都是平年