题解 | #日期累加#

日期累加

https://www.nowcoder.com/practice/eebb2983b7bf40408a1360efb33f9e5d

#include <stdbool.h>
#include <stdio.h>
bool learyear(year)
{
    return (year%4==0 && year%100!=0||year%400==0);
}
int main() {
   int m=0;
   scanf("%d",&m);
   int Days[2][13] = {{0,31,28,31,30,31,30,31,31,30,31,30,31},
            {0,31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}};
   while(m--)
   {
        int year,month,day,days;
        scanf("%d %d %d %d",&year,&month,&day,&days);
        int sum = day + days;
        while(sum>Days[learyear(year)][month])
        {
            sum-=Days[learyear(year)][month];
            ++month;
            if(month==13)
            {
                ++year;
                month=1;
            }
        } 
        day=sum;
        if(month<10)
        {
            if(day<10)
            {
                printf("%d-0%d-0%d\n",year,month,day);
            }
            else {
                printf("%d-0%d-%d\n",year,month,day);
            }
        }
        else
        {
            if(day<10)
            {
                printf("%d-%d-0%d\n",year,month,day);
            }
            else {
              printf("%d-%d-%d\n",year,month,day);
            }
        }
   }
  
    return 0;
}

全部评论

相关推荐

01-16 18:34
四川大学 Java
欢迎加入AI:没有啥稳定不稳定,一切都源于业务快速发展还是收缩。我当年一开始去的央企,业务不赚钱,也贼卷,慢慢就开始优化了。。。
点赞 评论 收藏
分享
西松屋:说明原部门有机会把
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务