题解 | 打印日期

打印日期

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

#include <stdio.h>
using namespace std;
void Nextday(int year,int &month,int &day){
    int arr[]{0,31,28,31,30,31,30,31,31,30,31,30,31};
    bool isLeap=false;
    if(year%400==0||year%4==0&&year%100!=0){isLeap=true;}
    if(isLeap){arr[2]=29;}
    ++day;
    if(day>arr[month]){
        day=1;
        ++month;
    }
}
int main(){
    int year,days;
    while(scanf("%d%d",&year,&days)!=EOF){
        int count=1;
        int month=1;
        int day=1;
        if(days==1){
            printf("%d-%02d-%02d\n",year,month,day);
        }else{
        while(true){
            if(count==days){printf("%d-%02d-%02d\n",year,month,day);break;}
            Nextday(year,month,day);
            ++count;
        }
        }
    }
    return 0;
}

#shit#
全部评论

相关推荐

05-09 12:23
已编辑
华南理工大学 Java
野猪不是猪🐗:给他装的,双九+有实习的能看的上这种厂我直接吃⑨✌们拿它练练面试愣是给他整出幻觉了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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