第1个回答 2013-04-01
char str[100];
memset(str,0,100);
strcpy(str,"1995-12-06")
int year,month,day;
sscanf(str,"%d-%d-%d",&year,&month,&day);//自己调试下就好了
第4个回答 推荐于2017-09-03
#include <stdio.h>
static int is_valid_date(int y, int m, int d)
{
int month[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0)
month[1] = 29;
return m > 0 && m <= 12 && d > 0 && d <= month[m - 1];
}
int main(void)
{
int y, m, d;
scanf("%4d-%2d-%2d", &y, &m, &d);
if (is_valid_date(y, m, d))
printf("valid date\n");
else
printf("invalid date\n");
return 0;
}本回答被提问者采纳