4013 - 这个月份有多少天呢?
翔翔很好奇一个月有多少天,他发现2016年10月有31天,2月有29天,3月有31天,4月有30天。他就想是不是每个月份的天数就是这3个数呢。他看了看妈妈手机的万年历,发现2015年的2月份有28天。为啥呢,后来他发现2016年是闰年,2015年不是闰年。现在请你编写一个程序,帮他算算x年y月有多少天?(请用pascal语言编写)
Input
输入年份x和月份y,已知x和y都是自然数,并且 0<=x<=10000, 1<=y<=12 .
测试数据有多组,处理到输入结束。
Output
输出天数,每个输出占一行
Examples
Input
2000 2 2000 3 2016 5 2015 2
Output
29 31 31 28
Solution C++
#include <iostream> #include <cstdio> using namespace std; int main() { int year,month; while(scanf("%d%d",&year,&month)==2) { switch (month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: cout<<31<<endl; break; case 4: case 6: case 9: case 11: cout<<30<<endl; break; default: //2月 if( (year%100 != 0 && year%4 == 0) || (year%400 == 0) ) { //如果是闰年,2月29天 cout<<29<<endl; } else { //如果是平年,2月28天 cout<<28<<endl; } break; } } }