中易网

C语言 打印日历,星期和日起对不上号,怎样调整日期位置不用调整星期位置 ?

答案:3  悬赏:60  
解决时间 2021-01-13 19:12
  • 提问者网友:且恨且铭记
  • 2021-01-13 02:45
C语言 打印日历,星期和日起对不上号,怎样调整日期位置不用调整星期位置 ?
最佳答案
  • 二级知识专家网友:不如潦草
  • 2021-01-13 03:38
加了一个计算 某年1月1日 星期几的函数
#include
int first_day(int year)
{
int sum_day, week_day;
sum_day = 365*(year - 1900); //count from 1900.01.01 Mon
sum_day += (year -1 -1900)/4; //add leapyear Feb 29
if(year > 2000)
{
sum_day -= ((year - 2000)/100 - (year - 2000)/400);//eg 2100 2200 2300
}

week_day= sum_day%7 + 1;
return week_day;// Mon Tue Wed Thu Fri Sat Sun <= 1 2 3 4 5 6 7
}

void main()
{ int i,j,k,year,week,m;

int day[]={31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d",&year);
if((year%4==0&&year%100!=0)||(year%400==0))
day[1]++;
//week=(35+year+year/4-year/100+year/400)%7;
week = (7 + first_day(year) -1) %7;
for(i=0;i<12;i++) { ;
printf("*Mon Tue Wed Thu Fri Sat Sun\n");
for(k=0;k
for(j=1;j<=day[i];j++)
{ printf("%3d ",j);
if(++week>=7) { printf("\n");
week=week%7;
}
}
printf("\n");
}
}
全部回答
  • 1楼网友:末日狂欢
  • 2021-01-13 04:11
科大的童鞋啊,苦逼了,抽到这题
  • 2楼网友:逃夭
  • 2021-01-13 03:51
来学习一下,我也想知道
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息