📄 1.cpp
字号:
#include<iostream.h>
#include<iomanip.h>
int runyear(int y,int mon[])
{
int i;
if(y%400==0) i=1;
else if(y%100!=0&&y%4==0) i=1;
if(i==1) mon[2]=29;
else mon[2]=28;
/* if(i==1) cout<<y<<"是闰年"<<endl;
else cout<<y<<"不是闰年"<<endl;
for(i=1;i<=12;i++)
cout<<endl<<i<<"月"<<mon[i]<<"天";*/
return(i);
}
int xingqi(int y,int m,int d,int mon[])
{
int week;
int i;
week=(y+(y-1)/4-(y-1)/100+(y-1)/400)%7;
for(i=1;i<m;i++) week+=mon[i];
week=(week+d-1)%7;
/* cout<<y<<"年"<<m<<"月"<<d<<"日";
cout<<"星期"<<week<<endl;*/
return(week);
}
void diplay(int y1,int m1,int d1,int y2,int m2,int d2,int mon[])
{
int i,j,xin;
int y=y1; int m=m1; int d=d1;
j=1;
xin=xingqi(y1,m1,d1,mon);
cout<<y1<<"年"<<endl;
cout<<setw(20)<<"日"<<setw(5)<<"一"<<setw(5)<<"二"<<setw(5)<<"三"<<setw(5)<<"四"<<setw(5)<<"五"<<setw(5)<<"六"<<endl;
cout<<endl<<setw(5)<<m<<"月"<<setw(3)<<"第"<<setiosflags(ios::right)<<setw(2)<<j<<"周";
for(i=1;i<=xin;i++)
cout<<setw(5)<<" ";
while(y<y2||m<m2||d<=d2)
{
if(d>mon[m])
{
m++;d=1;
if(m>12) {y++;m=1;cout<<endl<<endl<<y<<"年";}
cout<<endl;
if(xin!=7) cout<<endl<<setw(5)<<m<<"月"<<setw(3)<<"第"<<setiosflags(ios::right)<<setw(2)<<j<<"周";
for(i=1;i<=xin;i++)
cout<<setw(5)<<" ";
}
if(xin>6) {xin=0;j++;cout<<endl<<setw(5)<<m<<"月"<<setw(3)<<"第"<<setiosflags(ios::right)<<setw(2)<<j<<"周";}
cout<<setw(5)<<d;
d++;
xin++;
}
cout<<endl<<endl;
}
void main()
{
int mon[13]={0,31,0,31,30,31,30,31,31,30,31,30,31};
int y1,m1,d1;
int y2,m2,d2;
cout<<"输入开始年月日,以空格间隔"<<endl; cin>>y1;cin>>m1;cin>>d1;
cout<<"输入结束年月日,以空格间隔"<<endl; cin>>y2;cin>>m2;cin>>d2;
/* int y1=2007;int m1=3;int d1=3;
int y2=2008;int m2=3;int d2=3;*/
cout<<endl<<"学院校历: "<<y1<<"年"<<m1<<"月"<<d1<<"日 至 "<<y2<<"年"<<m2<<"月"<<d2<<"日"<<endl<<endl;
runyear(y1,mon);
xingqi(y1,m1,d1,mon);
diplay(y1,m1,d1,y2,m2,d2,mon);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -