OpenJudge 计算概论-判断闰年

时间:2022-01-21 22:35:12
/*========================================================================
判断闰年
    总时间限制: 1000ms 内存限制: 65536kB
描述
    判断某年是否是闰年。
输入
    输入只有一行,包含一个整数a(0 < a < 3000)
输出
    一行,如果公元a年是闰年输出Y,否则输出N
样例输入
    2006
样例输出
    N
提示
    公历纪年法中,能被4整除的大多是闰年,但能被100整除而不能被400整除的年份
    不是闰年, 能被3200整除的也不是闰年,如1900年是平年,2000年是闰年,
    3200年不是闰年。
    
下面是*的讲解:
目前使用的格里历闰年规则如下:
1.西元年份除以400可整除,为闰年。
2.西元年份除以4可整除并且除以100不可整除,为闰年。
3.西元年份除以4不可整除,为平年。
4.西元年份除以100可整除并且除以400不可整除,为平年
算法:
if 西元年份是400的倍數 : 閏年
else if 西元年份是4的倍數 and 西元年份不是100的倍數 : 閏年
else : 平年 
==========================================================================*/
 1 #include<stdio.h>
 2 int main()
 3 {
 4     int a;
 5     scanf("%d",&a);
 6     if(a%4==0)
 7     {
 8         if(a%100==0&&a%400!=0||a%3200==0)
 9         {
10             printf("N\n");
11         }
12         else printf("Y\n");
13     }
14     else
15         printf("N\n");
16     /*if((a%4==0&&a%100!=0)||a%400==0)
17         printf("Y\n");
18     else
19         printf("N\n"); */
20     return 0;
21 }