#include <stdio.h>
int main ( )
{
int year,leap,month;
scanf("%d%d",&year,&month);
month=month%13;
if (year%4==0&&year%100!=0||year%400==0)
{
switch(month)
{
case 1: month=31;break;
case 2: month=29;break;
case 3: month=31;break;
case 4: month=30;break;
case 5: month=31;break;
case 6: month=30;break;
case 7: month=31;break;
case 8: month=31;break;
case 9: month=30;break;
case 10: month=31;break;
case 11: month=30;break;
case 12: month=31;break;
}
}
else
switch(month)
{
case 1: month=31;break;
case 2: month=28;break;
case 3:month=31;break;
case 4: month=30;break;
case 5: month=31;break;
case 6: month=30;break;
case 7: month=31;break;
case 8: month=31;break;
case 9: month=30;break;
case 10: month=31;break;
case 11: month=30;break;
case 12: month=31;break;
}
printf("%d",month);
return 0;
}
修改如下,供参考,输入时的格式:2020 2 回车 两个数字间是空格,没有逗号等字符。
#include <stdio.h>
int main ( )
{
int year,leap,month;
scanf("%d%d",&year,&month);
//month=month%13; 修改
switch(month)
{
case 1: month=31;break;
case 2:
if (year%4==0&&year%100!=0||year%400==0)
month=29;
else
month=28;
break;
case 3: month=31;break;
case 4: month=30;break;
case 5: month=31;break;
case 6: month=30;break;
case 7: month=31;break;
case 8: month=31;break;
case 9: month=30;break;
case 10: month=31;break;
case 11: month=30;break;
case 12: month=31;break;
}
/*else
switch(month)
{
case 1: month=31;break;
case 2: month=28;break;
case 3:month=31;break;
case 4: month=30;break;
case 5: month=31;break;
case 6: month=30;break;
case 7: month=31;break;
case 8: month=31;break;
case 9: month=30;break;
case 10: month=31;break;
case 11: month=30;break;
case 12: month=31;break;
} */
printf("%d",month);
return 0;
}
输入格式不对,在年份月份间可以加空格