效果图:
#include <iostream.h>
void main()
{
int i,j,t=1,n,year,x=0,l=0;
cout<<"万年历(输入整数年份):";
cin>>year;
if((year%4==0&&year%100!=0)||year%400==0)
{
x=1;
cout<<"是闰年"<<endl;
}
else
{
cout<<"不是闰年"<<endl;
}
for(i=1;i<=year;i++)
{
if((year%4==0&&year%100!=0)||year%400==0)
{
l++;
}
}
t=(365*(year-1-l)+366*l+1)%7+5;
if(t>7)
t=t%7;
for(i=1;i<13;i++)
{
cout<<endl;
cout<<i<<"月"<<endl;
cout<<"\t日"<<"\t一"<<"\t二"<<"\t三"<<"\t四"<<"\t五"<<"\t六"<<endl;
for(int h=1;h<t;h++)
{
cout<<"\t";
}
n=t;
if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
{
for(j=1;j<32;j++)
{
if((j+n-1)%7==1)
{
t=2;
cout<<"\t"<<j;
}
if((j+n-1)%7==2)
{
t=3;
cout<<"\t"<<j;
}
if((j+n-1)%7==3)
{
t=4;
cout<<"\t"<<j;
}
if((j+n-1)%7==4)
{
t=5;
cout<<"\t"<<j;
}
if((j+n-1)%7==5)
{
t=6;
cout<<"\t"<<j;
}
if((j+n-1)%7==6)
{
t=7;
cout<<"\t"<<j;
}
if((j+n-1)%7==0)
{
t=1;
cout<<"\t"<<j<<endl;
}
}
}
if(i==2)
{
if(x==1)
{
for(j=1;j<30;j++)
{
if((j+n-1)%7==1)
{
t=2;
cout<<"\t"<<j;
}
if((j+n-1)%7==2)
{
t=3;
cout<<"\t"<<j;
}
if((j+n-1)%7==3)
{
t=4;
cout<<"\t"<<j;
}
if((j+n-1)%7==4)
{
t=5;
cout<<"\t"<<j;
}
if((j+n-1)%7==5)
{
t=6;
cout<<"\t"<<j;
}
if((j+n-1)%7==6)
{
t=7;
cout<<"\t"<<j;
}
if((j+n-1)%7==0)
{
t=1;
cout<<"\t"<<j<<endl;
}
}
}
else
{
for(j=1;j<29;j++)
{
if((j+n-1)%7==1)
{
t=2;
cout<<"\t"<<j;
}
if((j+n-1)%7==2)
{
t=3;
cout<<"\t"<<j;
}
if((j+n-1)%7==3)
{
t=4;
cout<<"\t"<<j;
}
if((j+n-1)%7==4)
{
t=5;
cout<<"\t"<<j;
}
if((j+n-1)%7==5)
{
t=6;
cout<<"\t"<<j;
}
if((j+n-1)%7==6)
{
t=7;
cout<<"\t"<<j;
}
if((j+n-1)%7==0)
{
t=1;
cout<<"\t"<<j<<endl;
}
}
}
}
if(i==4||i==6||i==9||i==11)
{
for(j=1;j<31;j++)
{
if((j+n-1)%7==1)
{
t=2;
cout<<"\t"<<j;
}
if((j+n-1)%7==2)
{
t=3;
cout<<"\t"<<j;
}
if((j+n-1)%7==3)
{
t=4;
cout<<"\t"<<j;
}
if((j+n-1)%7==4)
{
t=5;
cout<<"\t"<<j;
}
if((j+n-1)%7==5)
{
t=6;
cout<<"\t"<<j;
}
if((j+n-1)%7==6)
{
t=7;
cout<<"\t"<<j;
}
if((j+n-1)%7==0)
{
t=1;
cout<<"\t"<<j<<endl;
}
}
}
}
}