读书人

C语言判断是否是闰年有点小疑点。请

发布时间: 2012-04-03 12:38:19 作者: rapoo

C语言判断是否是闰年,有点小问题。。请专家进来看看。
1。如果年份能被4整除,请转到步骤2。否则,请转到步骤5。
2。如果今年是被100整除,请转到步骤3。否则,
请转到步骤4。
3。如果今年是被400整除,请转到步骤4。否则,
请转到步骤5。
4。今年是闰年(366天)。
5。今年是不是闰年(365天)。

这是要求。
以下是代码。
#include<stdio.h>
#include<windows.h>
void main()
{
int a;
printf("请输入一个年份:");
scanf("%d",&a);
if(a%4==0)
{
printf("今年是闰年\n",a);
}
else if(a%100==0)
{
printf("今年是闰年\n",a);
}
else if(a%400==0)
{
printf("今年是闰年\n",a);
}
else
{
printf("今年不是闰年\n",a);
}
system("Pause");
}

程序能运行,但有个问题:1700、 1800年、 1900年、 2100年、 2200年、 2300年、 2500年、 2600年不是闰年,但输入程序后依然显示是闰年。

请问怎么改?
谢谢各位!

[解决办法]

int year;
scanf("%d", &year);
if(0==year%4&&0!=year&100||0==year%400)
printf("run nian! \n");
else printf("bu shi run nian!\n");

四年一润,百年不润,四百年一润。

读书人网 >C语言

热点推荐