|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
下面的year%100!=0 这句是网友提示我加上的,我想知道为什么 年份与100取模 需要是不等于0的值啊,不等于不就代表着有余数了吗,不能被100整除了才是闰年吗?
#include <stdio.h>
void main()
{
int year, leap,n=1;
printf("please input a year, eg.2000, I will help you ping or run\n");
while (n<=5)
{
scanf("%d", &year);
if (year%4==0 && year%100!=0 || year%400==0) //year%4==0 && year%400==0
{
leap=1; //leap变量没有重置,,,就是只要有一次是闰年,leap就永远是1,不管输什么都是闰年
}
else
{
leap=2;
}
switch (leap) //switch后面的表达式 结果是一个boolean型,switch(boolean) 是不对的 (year%4==0 && year%400==0)
{
case 1:printf("这是一个闰年!\n"); break;
case 2:printf("这是一个平年!\n"); break;
}
n++;
}
}
因为闰年是这样定义的:
1 能被4整除但是不能被100整除
2 能被400整除
|
|