请问switch case中case后内容相同可以合并吗,为什么我计算错误
#include <stdio.h>
int main()
{
/* 定义需要计算的日期 */
int year = 2008;
int month = 8;
int day = 8;
/*
* 请使用switch语句,if...else语句完成本题
* 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”
* 小编还是希望大家独立完成哦~
*/
int date=0,i;
for(i=1;i<month;i++)
{switch(month)
{
case 1: case 3: case 5: case 7: case 8: case 10: case 12: date=date+31;break;
case 4: case 6: case 9: case 11: date=date+30;break;
case 2: if(year%4==0)
{
date=date+29;
break;
}
else
{
date=date+28;
break;
}
}
}date=date+day;
printf("date=%d\n",date);
return 0;
}