帮忙看下这个C语言程序,关于打印万年历的.

来源:百度知道 编辑:UC知道 时间:2024/06/30 15:45:15
#include <stdio.h>
void main ()
{int y,m,d,c,w,mo,e,q,z,a;
printf ("请输入年份");
scanf ("%d",&y);
printf ("%d%s",y,"年");
for (m=1;m<=12;m++)
{d=1;
if (m<=2)
{mo=m+12;y=y-1;}
else mo=m;
c=y/100;y=y%100;
w=y+y/4+c/4-2*6+26*(mo+1)/10+d-1;
w=w%7;
if (w<0) w=w+7;
printf ("\n%d%s\n",m,"月");
printf ("%s\n"," Sun Mon Tue Wed Thu Fri Sat");
if (w>1)
{for (e=1;e<=w;e++)
printf (" ");}
if (y%4==0&&y%100!=0||y%400==0)
q=29;
else
q=28;
switch (m)
{case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:d=31;break;
case 4:
case 6:
case 9:
case 11:d=30;break;
default:d=q;
}
for (z=1;z<=d;z++)
{a=z%7;
if (w==0) w=7;
if (a==7-w)
printf (" %.2d\n",z);
el

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define TRUE 1
/*主函数*/
void main()
{
int year;
int PutinYear(void);
year = PutinYear ();
void GetMonth(int year);
GetMonth (year);
}
/*输入年份*/
int PutinYear(void)
{
int year;

while(TRUE)
{
printf("请输入年份(1-3000) : ");
scanf("%d", &year);
if(year > 0&&year<3001)
{
return year;
}
}
}
/*判断是否为闰年*/
int LeapYear(int year)
{
return (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
}
/*调用每个月份*/
void GetMonth (int year)
{
int month;
for(month = 1; month <= 12; month++)
{
void PrintMonth(int month, int year);
PrintMonth(month, year);
printf("\n");
}
}

enum{Sunday, Monday, Tuesday, Wednesday,<