题目描述
输入年份和月份,输出这一年的这一月有多少天。需要考虑闰年。
输入格式
输入两个正整数,分别表示年份 \(y\) 和月数 \(m\),以空格隔开。
输出格式
输出一行一个正整数,表示这个月有多少天。
样例 #1样例输入 #1
1926 8
样例输出 #1
31
样例输入 #2
2000 2
样例输出 #2
29
提示数据保证 \(1583 \leq y \leq 2020\),\(1 \leq m \leq 12\)。以下是答案
#include using namespace std;//判断是否闰年int rn(int a){ return a%400==0||a%4==0&&a%100!=0;}int main(){ int y,m,d; int day; cin>>y>>m; //判断月份 if(m == 2 && rn(y)){ day = 29; cout<<day; } if(m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12){ day = 31; cout<<day; } if(m == 2 || m == 4 || m == 6 || m == 9 || m == 11){ day = 30; cout<<day; } else{ day = 28; cout<<day; } return 0;}
之后WA了
这才是正确的写法!!!
#include using namespace std;//判断是否闰年int rn(int a){ //是闰年return a%400==0||a%4==0&&a%100!=0;}int main(){ int y,m,d; int day; cin>>y>>m; //判断月份 if(m == 2){ if(rn(y)){ day = 29; cout<<day;} else{day = 28;cout<<day;} } if(m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12){ day = 31; cout<<day; } if(m == 4 || m == 6 || m == 9 || m == 11){ day = 30; cout<<day; } return 0;}
不错!AC了