题解 | #打印日期#

打印日期

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

#include <iostream>
using namespace std;
//获取月份天数
int getMonthDay(int year,int month){
    int month_day[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};
    if(month == 2 && (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)) return 29;
    return month_day[month];
}
int main() {
    int year, days;
    while (cin >> year >> days) { // 注意 while 处理多个 case
        int month = 1;
        while(days > getMonthDay(year, month)){
            days -= getMonthDay(year, month);
            ++month;
        }
        printf("%04d-%02d-%02d\n",year,month,days);
    }
    return 0;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务