首先要知道,什么是闰年。
判定公历闰年遵循的一般规律为: 四年一闰,百年不闰,四百年再闰.
公历闰年的精确计算方法:
①、普通年能被4整除的为闰年。(如1920年就是闰年,1910年不是闰年)
②、世纪年能被400整除的是闰年。(如2000年是闰年,1900年不是闰年)
基本不用看下面那个
③、对于数值很大的年份能整除3200,但同时又能整除172800则又是闰年.(如172800年是闰年,86400年不是闰年)
用数学计算可用如下判断条件:
1.年份不能被100整除但是能被4整除的,是闰年。
2.年份能被100整除而且能被400整除的,是闰年。
3.不满足以上两个条件的是平年。
那么程序代码应该这样:(整除是对其进行取余,不是用除号)
#include <stdio.h>
int main()
{
int year,a;
printf("intput year to determine whether it is leap year\n");
scanf("%d",&year);
if((year%4 == 0&&year%100 != 0)||(year%400 == 0))
{
a = 1;
}
else
{
a = 0;
}
if(a == 1)
{
printf("%d year is leap year~\n",year);
}
else
{
printf("%d year is not leap year\n",year);
}
return 0;
}
执行代码段,进行检验: