6-6 日期 - 3. 判断日期
请编写函数,判断日期是否有效。
函数原型
int IsValidDate(int year, int month, int day);
说明:参数 year、month 和 day 为日期的年、月和日数,若日期值正确有效,则函数值为 1(真),否则为 0(假)。
具体要求如下:
年数为正整数
月数在 1 ~ 12 之间
日数在 1 ~ 该月天数之间
裁判程序
#include <stdio.h>
int IsLeapYear(int year);
int MaxDayMonth(int year, int month);
int IsValidDate(int year, int month, int day);
int main()
{
int y, m, d;
scanf("%d/%d/%d", &y, &m, &d);
if (IsValidDate(y, m, d))
{
printf("Yes");
}
else
{
printf("No");
}
return 0;
}
......
/* 你提交的代码将被嵌在这里 */
输入样例1
1995/3/31
输出样例1
Yes
输入样例2
2021/2/29
输出样例2
No
关联习题:日期-判断闰年,日期-求月天数。
c语言解析:
int IsValidDate(int year, int month, int day)
{
if (MaxDayMonth(year, month)>=day)return 1;
return 0;
}