程序设计:望各位高手帮小弟解答,不胜感激!!! 20
已知2000年1月1日为星期六,请输入任一年的年份后,打印该年的年历。(只能用C语言编写,不能用其他的,一定要详细点,最好写三份),太谢谢了,如果还有时间可以写写您的思路...
已知2000年1月1日为星期六,请输入任一年的年份后,打印该年的年历。
(只能用C语言编写,不能用其他的,一定要详细点,最好写三份),太谢谢了,如果还有时间可以写写您的思路。写的好再加分~~~
谢谢这位朋友,但是不得不说我运行的时候你有21处错误,8个警告,嘿嘿,修改一下。。。。。。。。。 展开
(只能用C语言编写,不能用其他的,一定要详细点,最好写三份),太谢谢了,如果还有时间可以写写您的思路。写的好再加分~~~
谢谢这位朋友,但是不得不说我运行的时候你有21处错误,8个警告,嘿嘿,修改一下。。。。。。。。。 展开
1个回答
展开全部
#include <stdio.h>
int main()
{
int year,week;
scanf(\"%d\",&year);
if(year==2000)week=6;
else if(year<2000)week=((year-2000)*365+(year-2000)/4+6)%7+7;
else week=((year-2000)*365+(year-2000)/4+((year-2000)%4!=0)+6)%7;
printf(\"\\t\\t%d年年历\\n\\n\",year);
for(int i=1;i<13;i++)
{
printf(\"%d月:\\n\",i);
printf(\"日\\t一\\t二\\t三\\t四\\t五\\t六\\n\");
int day;
if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)day=31;
else if(i==2&&(year%400==0||year%4==0))day=29;
else if(i==2)day=28;
else day=30;
week%=7;
for(int j=0;j<week;j++)printf(\"\\t\");
for(j=1;j<=day;j++)
{
if(week%7==0&&j!=11)printf(\"\\n%d\\t\",j);
else printf(\"%d\\t\",j);
week++;
}
printf(\"\\n\\n\");
}
return 0;
}
int main()
{
int year,week;
scanf(\"%d\",&year);
if(year==2000)week=6;
else if(year<2000)week=((year-2000)*365+(year-2000)/4+6)%7+7;
else week=((year-2000)*365+(year-2000)/4+((year-2000)%4!=0)+6)%7;
printf(\"\\t\\t%d年年历\\n\\n\",year);
for(int i=1;i<13;i++)
{
printf(\"%d月:\\n\",i);
printf(\"日\\t一\\t二\\t三\\t四\\t五\\t六\\n\");
int day;
if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)day=31;
else if(i==2&&(year%400==0||year%4==0))day=29;
else if(i==2)day=28;
else day=30;
week%=7;
for(int j=0;j<week;j++)printf(\"\\t\");
for(j=1;j<=day;j++)
{
if(week%7==0&&j!=11)printf(\"\\n%d\\t\",j);
else printf(\"%d\\t\",j);
week++;
}
printf(\"\\n\\n\");
}
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询