3051: GESP C++ 一级 每月天数202303

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:29 解决:12

题目描述

【问题描述】
小明刚刚学习了每月有多少天,以及如何判断平年和闰年,想到可以使用编
程方法求出给定的月份有多少天。你能做到吗?
【输入描述】

输入一行,包含两个整数,分别表示一个日期的年、月。

【输出描述】
输出一行,包含一个整数,表示输入月份有多少天。
【样例输入 1】
2022 1
【样例输出 1】
31
【样例输入 2】
2020 2
【样例输出 2】
29
【参考程序】

输入


样例输入 复制

2022 1

样例输出 复制

31

提示

#include <iostream>
using namespace std;
int main() {
    int y = 0, m = 0;
    cin >> y >> m;
    bool leap = false; // 判断闰年
    if (y % 400 == 0)
        leap = true;
    if (y % 4 == 0 && y % 100 != 0)
        leap = true;
    if (m ==1 || m==3 || m==5 || m==7 || m==8 || m==10 || m==12)
        cout << 31 << endl; // 大月
    else if (m == 4 || m == 6 || m == 9 || m == 11)
        cout << 30 << endl; // 小月
    else if (leap)
        cout << 29 << endl; // 闰年 2 月
    else
        cout << 28 << endl; // 平年 2 月
    return 0;
}