题解 | #日期累加#

日期累加

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

#include <stdio.h>

int Is_run(int year){
    return (year % 4 == 0 && year % 100 != 0)||year % 400 == 0;
}

void Date(int year,int month,int day,int after_day){
    int date[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}};
    int next_year,next_month,next_day,isrun,d;
    d = after_day + day;
    next_month = month;
    next_year = year;
    while(d>0){
        isrun = Is_run(next_year);
        d -= date[isrun][next_month++];
        if(next_month>12){
            next_month=1;
            next_year ++; 
        }
    }
    next_month--;
    if(next_month < 1){
        next_month = 12;
        next_year--;
    }
    d += date[isrun][next_month];
    next_day = d;
    printf("%d-%02d-%02d\n",next_year,next_month,next_day);
}

int main() {
    int times;
    int year,month,day,after_day;
    scanf("%d",×);
    for(int i = 0;i<times;i++){
        scanf("%d %d %d %d",&year,&month,&day,&after_day);
        Date(year, month, day, after_day);
    }
    return 0;
}

全部评论

相关推荐

2025-12-10 19:36
湖北工业大学 Web前端
饿魔:看到在线简历了吧
点赞 评论 收藏
分享
2025-12-28 22:19
门头沟学院 Java
不敢追165女神:简历写得毫无特点,你说你要是大二或者大三找寒假实习到暑期实习这段时间,你的简历还能约到面试。但是你是研究生哥,面试官不会因为你是研究生而降低要求,反而会觉得你是研究生才学了这么一点?为什么我不找个同阶段的本科生?
简历中的项目经历要怎么写
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务