题解 | #打印日期#

打印日期

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

#include <iostream>
#include<cstdio>
using namespace std;
int main() {
    int year, num;
    while (scanf("%d %d", &year, &num) != EOF) {
        int a[13] = { 0, 31, 0, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };

        if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
            a[2] = 29;
        } else {
            a[2] = 28;
        }
        int j = 0;
        int mon = 0;
        int temp = num;
        for (int i = 0; i < 13; i++) {
            j += a[i];
            if (j < num) {
                temp -= a[i];
                mon++;
            } else break;
        }

        printf("%d-%02d-%02d\n", year, mon, temp);
    }
    return 0;
}

全部评论

相关推荐

07-18 18:45
已编辑
中山职业技术学院 Java
投递TP-LINK等公司10个岗位
点赞 评论 收藏
分享
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-18 18:23
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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