题目描述
输入格式
输入两个正整数,分别表示年份 \(y\ 和月数 \(m\,以空格隔开。
输出格式
样例 #1
样例输入 #1
1926 8
样例输出 #1
31
样例输入 #2
2000 2
样例输出 #2
29
提示
数据保证 \(1583 \leq y \leq 2020\,\(1 \leq m \leq 12\。
以下是答案
#include <iostream>
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 <iostream>
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了