问题补充说明:输入某年,某月,某日,判断这一天是这一年的第几天。
#includevoidmain()
{
inty,m,d;
intsum=0;
intflog;//标识是否是闰年
printf("请输入年月日(yyyy-mm-dd)\n");
scanf("%4d-%2d-%2d",&y,&m,&d);
if((y%4==0&&y%100!=0)||y%400==0)
flog=1;
else
flog=0;
while((y12||m28)))
{
printf("inputerrro!\n");
printf("请输入年月日(yyyy-mm-dd)\n");
scanf("%4d-%2d-%2d",&y,&m,&d);
}
switch(m-1)
{
case12:sum+=31;
case11:sum+=30;
case10:sum+=31;
case9:sum+=30;
case8:sum+=31;
case7:sum+=31;
case6:sum+=30;
case5:sum+=31;
case4:sum+=30;
case3:sum+=31;
case2:
if(flog==1)//这里改一下
sum+=28;
else
sum+=30;
case1:sum+=31;break;//这里加上一个break语句
default:printf("非法月份\n");
break;
}
sum=sum+d;
if(flog==1)
printf("%disleapyear!\n",y);
printf("这一天是这年的第%d天",sum);
}