U302332 GSEP 1级真题 [202303] 每月天数
GSEP 1级真题 [202303] 每月天数
题目描述
小明刚刚学习了每月有多少天,以及如何判断平年和闰年,想到可以使用编程方法求出给定的月份有多少天。你能做到吗?
输入格式
输入一行,包含两个整数,分别表示一个日期的年、月。
输出格式
输出一行,包含一个整数,表示输入月份有多少天。
样例 #1
样例输入 #1
2022 1
样例输出 #1
31
样例 #2
样例输入 #2
2020 2
样例输出 #2
29
#include <iostream>
using namespace std;
bool IsLeap(int y) {
	bool a = (y % 400 == 0);
	bool b = (y % 4 == 0) && (y % 100 != 0);
	return a || b;
}
int main() {
	int y, m; cin >> y >> m;
	switch (m) {
		case 1:case 3:case 5:case 7:case 8:case 10:case 12:
			cout << 31; break;
		case 4:case 6:case 9:case 11:
			cout << 30; break;
		case 2: if (IsLeap(y)) cout << 29; 
				else cout << 28;
	}
}
                    
                
                
            
        
浙公网安备 33010602011771号