关于只限定if和switch类型的编程,下列程序可不可以化简?怎样化简?
题目是:输入年份月份,考虑闰年(闰年2月多一天,即有29天),输出该月份的天数
#include<stdio.h>
main()
{
int year,m,days;
printf("请输入年份、月份:");
scanf("%d %d",&year,&m);
if(year%400==0||year%4==0&&year%100!=0)
{
printf("闰年\n");
switch(m)
{
case 2:
days=29;break;
case 4: case 6: case 9: case 11:
days=30;break;
default:
days=31;break;
}
printf("%d天\n",days);
}
else
{
printf("不是闰年\n");
switch(m)
{
case 2:
days=29;break;
case 4: case 6: case 9: case 11:
days=30;break;
default:
days=31;break;
}
printf("%d天\n",days);
}
}