2021年9月9日,张三想约一直暗恋了很久的女生小芳看电影,小芳告诉张三可以的,就定在某年某月某日晚上8:00,不见不散!输入一个约会的日期,请问最终张三能实现他的愿望吗,若能实现输出yes,若不能,输出no;请编写代码判断
就是判断这个输入的日期是否存在。
要求日期输入格式为:YYYY-MM-DD(如2020-02-03)
代码如下:
#include <stdio.h>
int isValid(int year,int mon,int day)
{
//printf("%d %d %d\n",year,mon,day);
if(year < 0) return 0;
if(mon < 1 || mon > 12) return 0;
if(mon == 2)
{
//判断是否是闰年
if (year%4 == 0 && year%100 != 0)
{
if(day < 1 || day > 29)
return 0;
}else
{
if(day < 1 || day > 28)
return 0;
}
}else if (mon == 1 || mon == 3 || mon == 5 || mon== 7 || mon == 8 || mon==10 || mon==12)
{
if(day <1 || day >31)
return 0;
}else
{
if(day < 1 || day > 30)
return 0;
}
//判断日期是否已经过去了
if (year < 2021 )
{
return 0;
}else if(year == 2021)
{
if(mon < 9 || (mon == 9 && day < 9))
return 0;
}
return 1;
}
int main()
{
int year,mon,day;
scanf("%d-%d-%d",&year,&mon,&day);
if (isValid(year,mon,day))
{
printf("yes\n");
}else
printf("no\n");
return 0;
}
题目需求不够详细,怎么判断是否约会成功呢?