闰年二月当然是29天,但不是能被4整除的就是闰年,因为在纪年中我们规定四年一闰,每百年停闰一次,每四百年不停闰,所以除能被4整除外,公历年份是整百数的,必须是400的倍数的才是闰年,不是400的倍数的就是平年。
闰年二月29天,4年一个闰年即一个闰月。用年份除以4能得整数的就是闰年,如2000、2016、2020等
2004年农历闰年闰二月,前二月30天,后(闰)二月29天。
如果不能被4整除,则不是闰年 如果能被4整除,且不能被100整除,则为闰年 如果能被100整除,且能被400整除,则为闰年 如果能被100整除,但不能被400整除,则不是闰年 你把else的 {} 都补起来看就清楚点 if (year%4==0) { 骇f (year%100==0) { if (year%400==0) //能被400整除的,是闰年 { leap=1; } else //能被100整除,但不能被400整除的,不是闰年 { leap=0; } } else //能被4整除,但不能被100整除的,不是闰年 { leap=1; } } else //不能被4整除的,不是闰年 { leap=0; }
scanf("%d",&year);这掉了一个&
回答楼主:平年的二月有二十八天,平年一年一共有365天,闰年的二月有二十九天,闰年的一年一共有二十九天。
闰年 rùnnián 阳历有闰日的一年叫闰年,这年有366天。农历有闰月的一年也叫闰年,这年有13个月,即383天或384天。
import java.util.*; class RN { public boolean check(int year) { if((year%4 == 0)&&((year%100 != 0)|(year%400 == 0))) { return true; } else { return false; } } } public class Test { public static void main(String[] args) { Scanner sc=new Scanner(System.in); RN s=new RN(); System.out.println("Please input year ?"); if(s.check(sc.nextInt())) { System.out.println("This year is Run Nian"); } else { System.out.println("This year is not Run Nian"); } } } 这个是OK的,是不是你没有导入应有的包啊,import java.util.*; 因为Scanner属于util包
年尾数有两贰零的(如1600,2000)要能整除400才算闰年,1900就不是闰年;其余年份要能整除4就算闰年。
闰月和闰年的来历: “闰年”,我们通常所说的一年365天,其实是个约数,准确的数字应是365.2422日。那么一年365天,就与实际的一年相差0.2422日,这样四年之后就比实际的一年少了近一天。为了弥补这个差值,历法中规定,4年设一闰,即能被4整除的年份为闰年,另附加规定,凡遇世纪年(末尾数字为两个零的年份),必须能被400所整除才算闰年,其它的整百年不是闰年,即“百年不闰”。如1996年即闰年,2000年也是闰年,而1700年则不是储年。阳历闰年的二月有29天,2月29日为闰日,阳历闰年有366天。也就是说阳历闰年的二月并不叫闰二月。说“闰月”,则为阴阳历(汉历、藏历等)所特有。 闰月(Leap Month),是一种历法置闰方式。在亚洲(尤其在中国),闰月特指汉历(民间亦称农历)每逢闰年增加的一个月(为了协调回归年与汉历年的矛盾,防止汉历年月与回归年及四季脱节,每2至3年置1闰,古代曾采用19年置7闰的闰周,到唐代的《麟德历》时废除了固定闰周,采用无中气月置闰,因此是该闰时置闰)。有时,闰月也指公历的闰年中包含闰日的月份(特指公历闰年的二月)。 闰月这种制历方法最早是我国发明使用的,大约开始于公元前500多年,比古希腊要早160多年。我国历法采用十九年七闰月的方法,在不同的时期和国别是不同的。 在中国传统的阴阳历中以朔月的长度29.5306日为1个月的平均值,全年12个月,同回归年的长度365.2422日相差约10日21时,需要置闰,使阴阳历各个月份和天象物候保持对应的关系。