PTA---求月天数

最近做了几次模拟考试,对于求月天数这个题目有了更深一点的理解。

这个题的题目基本就是让用户输入年份和月份,给出该月有多少天。

对于这个题,首先就要考虑年份的问题,因为闰年和非闰年在二月是有一点不同的,所以要判断输入的年份是否为闰年。

int IsLeapYear(int year)
{
if(year%4==0&&year%100!=0||year%400==0)
return 1;
else
return 0;
}

再其次就是考虑月份了,这是可以用switch 选择语句。

int MonthDay(int year,int month)
{
int day=0;
if(year>0)
{
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day=31;
break;
case 4:
case 6:
case 9:
case 11:
day=30;
break;
case 2:
day=28+IsLeapYear(year);
break;
default:
day=0;
}
}
return day;
}

完整代码:

#include <stdio.h>

int IsLeapYear(int year);
int MonthDay(int year,int month);

int main()
{
int year,month;
scanf("%d %d",&year,&month);
printf("%d",MonthDay(year,month));
return 0;
}

int IsLeapYear(int year)
{
if(year%4==0&&year%100!=0||year%400==0)
{
return 1;
}
else
{
return 0;
}
}

int MonthDay(int year,int month)
{
int day=0;
if(year>0)
{
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day=31;
break;
case 4:
case 6:
case 9:
case 11:
day=30;
break;
case 2:
day=28+IsLeapYear(year);
break;
default:
day=0;
}
}
return day;
}

 

posted @   Yu_30  阅读(140)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示