也要求其他年份,谢谢
追答是不是让输入一个年份然后求没有第一天为星期几?
追问不是,是做万年历程序,要求输入年月,打印月历
追答int year,fd,zjrn,Mon;
printf("请输入年份:");
scanf("%d",&year);
printf("请输入月份:");
scanf("%d",&Mon);
int mon[13],i=1,week[13];
if(((year%4==0)&&(year%100!=0))||(year%400==0))
{
fd=((year-1804)/4+(year-1800)*365+3)/7
switch(i)
{
case 1: mon[i]=0;week[i]=fd;i++;if(i==Mon)break;
case 2: mon[i]+=31;week[i]=(mon[i]+fd)/7+1;i++;if(i==Mon)break;
case 3: mon[i]+=29;week[i]=(mon[i]+fd)/7+1;i++;if(i==Mon)break;
case 4: mon[i]+=31;week[i]=(mon[i]+fd)/7+1;i++;if(i==Mon)break;
case 5: mon[i]+=30;week[i]=(mon[i]+fd)/7+1;i++;if(i==Mon)break;
case 6: mon[i]+=31;week[i]=(mon[i]+fd)/7+1;i++;if(i==Mon)break;
case 7: mon[i]+=30;week[i]=(mon[i]+fd)/7+1;i++;if(i==Mon)break;
case 8: mon[i]+=31;week[i]=(mon[i]+fd)/7+1;i++;if(i==Mon)break;
case 9: mon[i]+=31;week[i]=(mon[i]+fd)/7+1;i++;if(i==Mon)break;
case 10: mon[i]+=30;week[i]=(mon[i]+fd)/7+1;i++;if(i==Mon)break;
case 11: mon[i]+=31;week[i]=(mon[i]+fd)/7+1;i++;if(i==Mon)break;
case 12: mon[i]+=30;week[i]=(mon[i]+fd)/7+1;i++;if(i==Mon)break;
}
}
答案过长了==
else部分我换个地方回答……
zhangqilong120 很厉害……忽略我吧!!!!!!!!!!!!