打印日期(华中科技大学考研机试)

简介: 打印日期(华中科技大学考研机试)

文章目录

  • 打印日期
  • 日期类问题必备函数
  • AC代码


打印日期

本题链接:打印日期

本博客给出本题截图

8.png

日期类问题必备函数

const int months[13] = {
    0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31
};
int is_leap(int year)  // 闰年返回1,平年返回0
{
    if (year % 4 == 0 && year % 100 || year % 400 == 0)
        return 1;
    return 0;
}
int get_days(int y, int m)  // y年m月有多少天
{
    if (m == 2) return months[m] + is_leap(y);
    return months[m];
}

AC代码

代码解释:没什么好解释的,注意1月1日也算一天,同时需要背好日期类题目的模板

代码

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int months[13] = {
    0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31
};
int is_leap(int year)  // 闰年返回1,平年返回0
{
    if (year % 4 == 0 && year % 100 || year % 400 == 0)
        return 1;
    return 0;
}
int get_days(int y, int m)  // y年m月有多少天
{
    if (m == 2) return months[m] + is_leap(y);
    return months[m];
}
int main()
{
    int y, s;
    while (cin >> y >> s)
    {
        int m = 1, d = 1;
        s -- ;   //因为1月1日也算一天
        while (s -- )
        {
            if ( ++ d > get_days(y, m))
            {
                d = 1;
                if ( ++ m > 12)
                {
                    m = 1;
                    y ++ ;
                }
            }
        }
        printf("%04d-%02d-%02d\n", y, m, d);
    }
    return 0;
}


目录
相关文章
|
算法
进制转换2 (清华大学考研机试)
进制转换2 (清华大学考研机试)
74 0
进制转换2 (清华大学考研机试)
|
存储 算法
进制转换 (清华大学考研机试)
进制转换 (清华大学考研机试)
69 0
进制转换 (清华大学考研机试)
|
资源调度 vr&ar
华中科技大学2017年数学分析高等代数考研试题
数分 1,$ \lim_{x\rightarrow+\infty} (x-x^2\ln(1+\frac{1}{x})) $ 2,求$\iint_\Sigma xdydz+ydzdx+zdxdy  $  其中$\Sigma $为$z=\sqrt{1-x^2-y^2}$的上半球面 3,求$ \...
1200 0
|
机器学习/深度学习 并行计算
华中师范大学2012年数学分析考研试题参考解答
来源  [尊重原有作者劳动成果]   一. (1)证明:由${{x}_{1}}=\frac{1}{2},{{x}_{2}}=\frac{3}{8},{{x}_{3}}=\frac{55}{128},\cdots $,猜测$\{{{x}_{2n+1}}\}$单调递减,$\{{{x}_{2n}}\...
642 0
|
机器学习/深度学习
华中师范大学2011年数学分析考研试题参考解答
来源 [尊重原有作者劳动成果]   一、 (1)证明:由于${{x}_{1}}\in (0,\frac{\pi }{2}),{{x}_{n+1}}=\sin {{x}_{n}}$,则${{x}_{n}}\in (0,\frac{\pi }{2}),n=1,2,\cdots $ 且${{x}_...
690 0
华中师范大学2007年数学分析考研试题参考解答
来源  [尊重原有作者劳动成果] 一、 计算题 1:解:由于 $\underset{x\to {{0}^{+}}}{\mathop{\lim }}\,\frac{\ln (1-x)}{-x}=\underset{x\to {{0}^{+}}}{\mathop{\lim }}\,\frac{1}...
798 0
|
机器学习/深度学习 Python
华中师范大学2008年数学分析考研试题参考解答
来源 [尊重原有作者劳动成果]   一、 计算题 1:解: $\underset{n\to +\infty }{\mathop{\lim }}\,\frac{1}{n}\sqrt[n]{n(n+1)(n+2)\cdots (2n-1)}=\underset{n\to +\infty }{\m...
943 0
|
存储 固态存储 程序员
考研计算机组成原理总结(5)
考研计算机组成原理总结(5)
744 0
|
存储 算法 调度
【考研必备】解开“黑匣子”的神秘面纱,透视数字世界底层实现过程(计算机组成原理)(下)
【考研必备】解开“黑匣子”的神秘面纱,透视数字世界底层实现过程(计算机组成原理)
|
5月前
|
存储 知识图谱
【计算机组成原理】指令系统&考研真题详解之拓展操作码!
也就是说 “其中三地址指令29”条这句话,完全可以翻译成“三地址这种类型的指令一共能有29种不同的可能性” 这样说就清晰多 因为这就意味着 我们需要用若干个字节 来表示这29种不同的可能性 然后又已知每一个字节位能表示的可能性是2种(0/1),那么我们想有多少个字节可以表示29种不同的可能呢?最少5种 (因为2的4次方=16<29),2^5=32>29,也就是说有32-29=3种可能性是不在三地址指令这种类型的指令集里面的,所以这3 种余出来的可能性要被利用 就在下一种 “二地址指令集”中利用到
86 0

热门文章

最新文章

下一篇
无影云桌面