📄 日历加判断第几周.cpp
字号:
# include <iostream.h>
void main()
{
int a,b,c,d,e,week,x,y,first,weeks,z;
for(;;)
{
cout<<"请输入一个日期,我将为你判断其是一年中的第几天"<<endl;
cout<<"其中包括2006-2011年的星期的情况"<<endl;
cout<<"年:";
cin>>e;
cout<<"月:";
cin>>a;
if(a>12) //状况分析提醒
{
cout<<"输入出现错误"<<endl;
}
cout<<"日:";
cin>>b;
if(b>31)
{
cout<<"输入出现错误"<<endl;
}
if(a==1) //1月份单独考虑
{
cout<<"这是一年中的第"<<b<<"天"<<endl;
x=b;
y=b;
}
else if(a==2) //2月份单独考虑
{
if(b>29)
{
cout<<"输入出错"<<endl;
}
else
{
cout<<"这是一年中的"<<31+b<<"天"<<endl;
x=31+b;
y=31+b;
}
}
else if(a>2)
{
c=30*(a-1);
if(a%2==0)
{
d=a/2;
}
else if(a%2!=0)
{
d=(a-1)/2;
}
if(e%4!=0) //判断是否为闰年
{
if(a==9) //7月份8月份的情况分开考虑
{
cout<<"这是一年中的第"<<c+d+b-1<<"天"<<endl;
x=c+d+b-1;
cout<<"距年底还有"<<366-c-d-b<<"天"<<endl;
}
else
{
cout<<"这是一年中的第"<<c+d+b-2<<"天"<<endl;
x=c+d+b-2;
cout<<"距年底还有"<<367-c-d-b<<"天"<<endl;
}
}
else if(e%4==0) //判断是否为闰年
{
if(a==9)
{
cout<<"这是一年中的第"<<c+d+b<<"天"<<endl;
y=c+d+b;
cout<<"距年底还有"<<366-c-d-b<<"天"<<endl;
}
else
{
cout<<"这是一年中的第"<<c+d+b-1<<"天"<<endl;
y=c+d+b-1;
cout<<"距年底还有"<<367-c-d-b<<"天"<<endl;
}
} //else if(e%4==0)的循环终止;
} //else if(a>2)的循环终止.
if(e==2006)
first=0;
if(e==2007)
first=1;
if(e==2008)
first=2;
if(e==2009)
first=4;
if(e==2010)
first=5;
if(e==2011)
first=6;
if(e%4!=0)
week=x%7;
if(e%4==0)
week=y%7;
if(week==1)
weeks=first;
if(week==2)
{
weeks=first+1;
if(weeks>=7)
weeks=weeks%7;
}
if(week==3)
{
weeks=first+2;
if(weeks>=7)
weeks=weeks%7;
}
if(week==4)
{
weeks=first+3;
if(weeks>=7)
weeks=weeks%7;
}
if(week==5)
{
weeks=first+4;
if(weeks>=7)
weeks=weeks%7;
}
if(week==6)
{
weeks=first+5;
if(weeks>=7)
weeks=weeks%7;
}
if(week==0)
{
weeks=first+6;
if(weeks>=7)
weeks=weeks%7;
}
if(weeks==0)
cout<<"今天星期日"<<endl;
else
cout<<"今天星期"<<weeks<<endl;
if(e%4!=0)
z=x;
if(e%4==0)
z=y;
for(int i=1;7*i<z;i++)
{
}
if(weeks<first) //first=1,2,3,4,5,6的情况,first-saturday算第一周;
cout<<"这一天所在星期为一年中的第"<<i+1<<"个星期"<<endl;
else
cout<<"这一天所在星期为一年中的第"<<i<<"个星期"<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -