闰年的判断规则为:能被4整除但不能被100整除的年份(这里用&&),或者能被400整除(这里用||)
我就写了这样一个程序。
#include <stdio.h>
void main()
{
int year;
printf("请输入年份");
scanf("%d",&year);
if ((year % 4 ==0 && (year % 100 <0 && year % 100 > 0))||(year % 400 ==0))
printf("%d年是闰年\n",year);
else
printf("%d年不是闰年\n",year);
}
照理说2004年应该是闰年阿。为什么却又不是呢。
----------------解决方案--------------------------------------------------------
#include <stdio.h>
#define oooo {
#define OOOO }
#define oOoO printf
#define OoOo scanf
#define oooO int
#define oOOo main
#define OooO "%d yes"
#define OOOo "%d no"
oooO oOOo() oooo oooO Oooo=2004;((Oooo%4==0&&Oooo%100!=0)||(Oooo%400==0))?oOoO(OooO,Oooo):oOoO(OOOo,Oooo);OOOO
真不知道混乱代码是怎么出来的!怎么我写出来的这么不像?????
简直就是单纯的宏替换~~~~~~~晕哦
[此贴子已经被作者于2007-9-2 4:02:13编辑过]
----------------解决方案--------------------------------------------------------
逻辑错误
if ((year % 4 ==0) && ( year % 100 != 0) ||(year % 400 ==0))
另外,楼上比较强大......
----------------解决方案--------------------------------------------------------
闰年的判断规则为:能被4整除但不能被100整除的年份(这里用&&),或者能被400整除(这里用||)
我就写了这样一个程序。
#include <stdio.h>
void main()
{
int year;
printf("请输入年份");
scanf("%d",&year);
if ((year % 4 ==0 && (year % 100 <0 && year % 100 > 0))||(year % 400 ==0))
/* 这里应该是 if ( (year%4==0 && year%100!=0) || year%400==0 ) 不清楚楼主的小于0和大于0是什么意思 */
printf("%d年是闰年\n",year);
else
printf("%d年不是闰年\n",year);
}
照理说2004年应该是闰年阿。为什么却又不是呢。
----------------解决方案--------------------------------------------------------
#include <stdio.h>
#define oooo {
#define OOOO }
#define oOoO printf
#define OoOo scanf
#define oooO int
#define oOOo main
#define OooO "%d yes"
#define OOOo "%d no"
oooO oOOo() oooo oooO Oooo=2004;((Oooo%4==0&&Oooo%100!=0)||(Oooo%400==0))?oOoO(OooO,Oooo):oOoO(OOOo,Oooo);OOOO
真不知道混乱代码是怎么出来的!怎么我写出来的这么不像?????
简直就是单纯的宏替换~~~~~~~晕哦
#include <stdio.h>
main(o){main(printf(&"不是闰年\n"[((!(o%4)&& o%100)||!(o%400))<<1],printf("%d年",o),scanf("%d",&o,printf("请输入年份:\n"))));}
----------------解决方案--------------------------------------------------------
我保证不仅仅是TC能编译,任何支持C89标准的编译器都能编
----------------解决方案--------------------------------------------------------
LS强大,我又学了一招!
----------------解决方案--------------------------------------------------------
重要的部分 if(n%4==0&&n%100!=o||n%400==0)
----------------解决方案--------------------------------------------------------
printf("%d年%s",o,&"不是闰年\n"....
----------------解决方案--------------------------------------------------------
闰年的判断规则为:能被4整除但不能被100整除的年份(这里用&&),或者能被400整除(这里用||)
我就写了这样一个程序。
#include <stdio.h>
void main()
{
int year;
printf("请输入年份");
scanf("%d",&year);
if ((year % 4 ==0 && (year % 100 <0 && year % 100 > 0))||(year % 400 ==0))
printf("%d年是闰年\n",year);
else
printf("%d年不是闰年\n",year);
}
照理说2004年应该是闰年阿。为什么却又不是呢。
----------------解决方案--------------------------------------------------------