c语言程序编程!哪位好心人帮帮忙啊 !
- 提问者网友:乱人心
- 2021-04-28 00:17
- 二级知识专家网友:一起来看看吧
- 2021-04-28 01:15
编过的一个题,代码如下:
#include<stdio.h>
//判断是否为闰年
int y(int year)
{
if(year%4==0 && year%100!=0 || year%400==0)
return 1;
else
return 0;
}
//计算某月有多少天
int d(int year,int month)
{
if(month==2)
return 28+y(year);
else
return 30+((month<=7)==(month%2));
}
//计算某天是星期几
int w(int year,int month)
{
if(month==1 || month==2){
month=month+12;
year--;
}
return(1+2*month+3*(month+1)/5+year+year/4-year/100+year/400)%7;
}
//打印月份表栏
void m(int month)
{
int a[13]={1,2,3,4,5,6,7,8,9,10,11,12};
printf(" ===================%d月========================\n",a[month-1]);
}
//打印星期一栏
void weeks()
{
printf(" 星期一 星期二 星期三 星期四 星期五 星期六 星期天 \n");
}
int main()
{
int year,month,day,week,i,j,t=0;
printf("请输入某一年:");
scanf("%d",&year);
printf("%d年的日历为;\n",year);
for(month=1;month<=12;month++){
m(month);
weeks();
week=w(year,month);
day=d(year,month);
if(week!=6){
for(i=0,j=1;i<=week;i++){
printf(" ");
j++;
}
}
for(i=1;i<=day;i++,j++){
printf(" ");
printf("%6d",i);
if(j%7==0)
printf("\n");
}
printf("\n");
}
return 0;
}//VC6.0运行通过的~