用c语言编写万年历

#包含“iostream.h”

#包含“iomanip.h”

#包含" stdlib.h "

Leapyear(int a)/*今年是闰年吗*/

{

if((a % 4 = = 0 & amp;& ampa%100!= 0)| |(a % 100 = = 0 & amp;& ampa%400==0))

返回(1);

否则返回(0);

}

int aa[12]={31,28,31,30,31,30,31,30,31,30,31 };

int cc[12]={31,29,31,30,31,30,31,30,31,30,31 };

Char bb[8][8]={ "星期日"、"星期一"、"星期二"、"星期三"、"星期四"、"星期五"、"星期六" };

ww(int a,int b,int c)

{

int n=0,m=0,I,j,k = 0;

for(I = 1;我& ltc;i++)

{

if(leapyear(i)==1)

m = m+366;

else m = m+365;

}

for(j = 1;j & ltb;j++)

{ if(leapyear(c)= = 1)k = k+cc[j-1];

else k = k+aa[j-1];

}

n =(m+k+a)% 7;

返回n;

}

无效月分(整数)

{

cout & lt& lt"最大天数是:";

如果(m==2)

cout & lt& ltaa[m-1]+1;

else cout & lt& ltaa[m-1]& lt;& ltendl

}

Void nianfen(int n)/*打印该年的日历*/

{

int i,j,k;

if(leapyear(n)==1)

{

for(j = 1;j & lt=12;j++)

{

cout & lt& ltj;

cout & lt& lt"月份"

cout & lt& lt“天”< & lt“一”

for(I = 0;我& ltww(1,j,n);i++)

{

cout & lt& ltsetw(4)& lt;& lt"";

}

for(k = 1;k & lt= cc[j-1];k++)

{

cout & lt& ltsetw(4)& lt;& ltk;

if((ww(1,j,n)+k)%7==0)

cout & lt& ltendl

}

cout & lt& ltendl

}

}

其他

{

for(j = 1;j & lt=12;j++)

{

cout & lt& ltj;

cout & lt& lt"月份"

cout & lt& ltww(1,j,n)& lt;& ltendl

cout & lt& ltendl & lt& lt“天”< & lt“一”

for(I = 0;我& ltww(1,j,n);i++)

{

cout & lt& ltsetw(4)& lt;& lt"";

}

for(k = 1;k & lt= aa[j-1];k++)

{

cout & lt& ltsetw(4)& lt;& ltk;

if((ww(1,j,n)+k)%7==0)

cout & lt& ltendl

}

cout & lt& ltendl

}

}

}

Void nianyue(int n,int y)/*打印一年和一个月的月历*/

{

int i,k;

if(leapyear(n)==1)

{

cout & lt& lt“天”< & lt“一”

for(I = 0;我& ltww(1,y,n);i++)

{

cout & lt& ltsetw(4)& lt;& lt"";

}

for(k = 1;k & lt= cc[y-1];k++)

{

cout & lt& ltsetw(4)& lt;& ltk;

if((ww(1,y,n)+k)%7==0)

cout & lt& ltendl

}

cout & lt& ltendl

}

其他

{ cout & lt& ltendl & lt& lt“天”< & lt“一”

for(I = 0;我& ltww(1,y,n);i++)

{

cout & lt& ltsetw(4)& lt;& lt"";

}

for(k = 1;k & lt= aa[y-1];k++)

{

cout & lt& ltsetw(4)& lt;& ltk;

if((ww(1,y,n)+k)%7==0)

cout & lt& ltendl

}

cout & lt& ltendl

}

}

void main()

{

int n,m;

int日、月、年;

while(1)

{

cout & lt& lt“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *:" & lt;& ltendl

cout & lt& lt" 1查询星期几" < & lt恩德尔

& lt& lt“2是闰年吗”< & lt恩德尔

& lt& lt" 3查询一个月的最大天数"

& lt& lt“4打印某一年的日历”

& lt& lt“5打印某年某月的月历”

& lt& lt" 6exit " & lt& lt恩德尔

& lt& lt“* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *:" & lt;& ltendl

cout & lt& lt"请输入要操作的指令:"

CIN & gt;& gtn;

开关(n)

{

案例1:cout & lt;& lt"请输入要查询的日期:";

cout & lt& lt"年份:";

CIN & gt;& gt年份;

cout & lt& ltendl & lt& lt"月:";

CIN & gt;& gt月份;

cout & lt& ltendl & lt& lt"日:";

CIN & gt;& gt天;

cout & lt& lt"周是:";

cout & lt& ltbb[ww(日、月、年)]& lt;& ltendl打破;

开关(ww(日、月、年))

{

案例1:cout & lt;& lt“星期一”;打破;

案例2:cout & lt;& lt“星期二”;打破;

案例三:cout & lt& lt“星期三”休息;

案例4:cout & lt;& lt“周四”;打破;

案例5:cout & lt;& lt“星期五”;打破;

案例6:cout & lt;& lt“星期六”休息;

案例7:cout & lt;& lt“星期天”;打破;

}

cout & lt& ltendl打破;

案例2:cout & lt;& lt"请输入要查询的年份:";

CIN & gt;& gtm;

if(leapyear(m)= = 1)cout & lt;& lt“今年是闰年”

else cout & lt& lt“不是闰年,请返回并重新输入”< & ltendl

打破;

案例三:cout & lt& lt"请输入月份:";

CIN & gt;& gtm;

月分(m);打破;

案例4:cout & lt;& lt"请输入要打印的年份:";

CIN & gt;& gtm;

年分(m);打破;

案例5:cout & lt;& lt"请输入年份:";

CIN & gt;& gtn;

cout & lt& ltendl & lt& lt"请输入月份:";

CIN & gt;& gtm;

cout & lt& ltendl

念月(n,m);打破;

案例6:出口(0);

}

}

}