#include
void main()
{
/*float*/int year,month,days; /* 不用浮点数 */
printf("input year,month=?\n");
scanf("%d,%d",&year,&month);
switch(month)/*;*/ /*多了个分号*/
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:days=31;
break;
case 4:
case 6:
case 9:
case 11:days=30;
break;
case 2: if((year%4==0)&&(year%100!=0)||(year%400==0))
days=/*28*/29;/*闰年才29天*/
else
days=/*29*/28;
break;
default:printf("month is error \n");
}
printf("year=%d,month=%d,days=%d\n",year,month,days);
}
自己看看吧
#include
int main()
{
int year,month,days;
printf("input year,month:\n");
scanf("%d,%d",&year,&month);
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:days=31;
break;
case 4:
case 6:
case 9:
case 11:days=30;
break;
case 2:
if(((year%4==0)&&(year%400==0))||((year%4==0)&&(year%100!=0)))
days=28;
else
days=29;
break;
default:printf("month is error \n");
}
printf("year=%d,month=%d,days=%d\n",year,month,days);
system("pause");
return 0;
}
break写错位置了,你应该按照顺序写。如果你月份输入5的话,只会打印1,3月份,然后跳出循环