题解 | 打印日期

#include <stdio.h>
 int day[2][31]={{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 isleapyear(int i){
    if((i%4==0&&i%100!=0)||i%400==0)
    return 1;
    else return 0;
 }
int main() {
    int i,j;
    scanf("%d %d",&i,&j);
    int t=isleapyear(i);
    int m,sum=0;
    for(m=1;m<=12;m++){
        sum+=day[t][m];
        if(sum>=j)
            break;
    }
    int q=m;
    while(j>0)
        j-=day[t][q--];
        j+=day[t][m];
    printf("%d-%02d-%02d",i,m,j);
    return 0;
}

全部评论

相关推荐

面向对象的火龙果很爱...:去吃一顿炸鸡就走
点赞 评论 收藏
分享
头顶尖尖的程序员:我也是面了三四次才放平心态的。准备好自我介绍,不一定要背熟,可以记事本写下来读。全程控制语速,所有问题都先思考几秒,不要急着答,不要打断面试官说话。
点赞 评论 收藏
分享
今天 12:17
已编辑
商丘师范学院 Java
后来123321:别着急,我学院本大二,投了1100份,两个面试,其中一个还是我去线下招聘会投的简历,有时候这东西也得看运气
无实习如何秋招上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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