zoukankan      html  css  js  c++  java
  • 计算机考研复试真题 打印日期

    题目描述

    给出年分m和一年中的第n天,算出第n天是几月几号。

    输入描述:

    输入包括两个整数y(1<=y<=3000),n(1<=n<=366)。

    输出描述:

    可能有多组测试数据,对于每组数据,
    按 yyyy-mm-dd的格式将输入中对应的日期打印出来。
    示例1

    输入

    2000 3
    2000 31
    2000 40
    2000 60
    2000 61
    2001 60
    

    输出

    2000-01-03
    2000-01-31
    2000-02-09
    2000-02-29
    2000-03-01
    2001-03-01





    /*
    程序设计思路:这是一道C题,哈哈。没什么技巧,按照题意去做就OK!这道题可以变式为给一个天数,求年月日和星期
    */
    #include<stdio.h>
    int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31},
    b[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
    int main(void){
         int year,day,month;
         while(scanf("%d%d",&year,&day)!=EOF){
             month=0;
             if(year%4==0&&year%100!=0||year%400==0)
            {
                 while(day>b[month])
                     day-=b[month],month++;
                 printf("%04d-%02d-%02d
    ",year,month,day);
            }
             else
            {
                 while(day>a[month])
                     day-=a[month],month++;
                 printf("%04d-%02d-%02d
    ",year,month,day);
            }
         }
        return 0;
    }
  • 相关阅读:
    Blocks to Cubes
    poj1113凸包
    AtCoder Regular Contest 078D
    Codeforces Round #400
    hdu2196树形dp
    Codeforces Round #409
    Codeforces Round #424
    hdu1520树形dp第一题
    Codeforces Round #412
    poj2823单调队列
  • 原文地址:https://www.cnblogs.com/parzulpan/p/9932168.html
Copyright © 2011-2022 走看看