黑马程序员技术交流社区
标题:
一个if 条件问题
[打印本页]
作者:
离渊
时间:
2014-4-28 22:01
标题:
一个if 条件问题
本帖最后由 离渊 于 2014-4-28 22:17 编辑
int yue[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
if((date[0]%100!=0 && date[0]%4==0)||date[0]%400) yue[2]=29;
printf("%d\n",yue[2]);
这个if这么写有问题么? 为什么跟我得到的结果相反 得出结果变成闰年28 不闰 29了
作者:
NenKeer
时间:
2014-4-28 22:10
int yue[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
if((date[0]%100!=0 && date[0]%4==0)||date[0]%400) yue[2]=29; //date[0]%400 改成 date[0]%400 == 0试试
printf("%d\n",yue[2]);
复制代码
作者:
离渊
时间:
2014-4-28 22:17
NenKeer 发表于 2014-4-28 22:10
一语惊醒梦中人
作者:
gaoxinglei123
时间:
2014-4-28 22:20
第二个条件date[0]%400取余写反了。当能被400整除闰年时。结果为0。反了这时应该取1。或后面条件加个反就行
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2