为了账号安全,请及时绑定邮箱和手机立即绑定

为何我计算的少了一天呢

http://img1.sycdn.imooc.com//5ec3a8ca0001667410670904.jpg为何我计算的少了一天呢

正在回答

2 回答

if(year%4==0||year%400==0&&year%100!=0)

这是判断是否为闰年

而且判断是否为闰年且在3月前或后应用&&

1 回复 有任何疑惑可以回复我~

你用if-else去判断是否闰年没有任何意义啊,输出的结果都是sum,

问题的关键是,case3:sum=59,意味着你默认二月份为59-31=28天,也就是你的sum都是按照平年算的。

那么在下面利用if条件语句区分的应该是“平年”还是“闰年”

        //判断为闰年且在3月前

    printf("%d年%d月%d日是本年度的第%d天",year,month,day,sum+1)    //这就是你的错误所在,闰年的天数是要加1的

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为何我计算的少了一天呢

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信