7--1(输入“年月日”判断第几天)
2013-03-19 19:07
253 查看
#include <iostream>
using namespace std;
int main()
{
/*--------------------------------------------------------------------------*///定义结构体的变量
int j,g,i=1;
struct N
{
int y;
int m;
int d;
}a;
/*--------------------------------------------------------------------------*///定义结构体的变量
/*----------------------------------------------------------------------*///判断输入的年份是否正确
while(i==1)
{
cout<<"请按“年月日”输入"<<endl;
cout<<"请输入:"<<endl;
cin>>a.y>>a.m>>a.d;
while(a.y<=0)
{
cout<<"您输入的“年份”不合法,请重新输入"<<endl;
cout<<"请按“年月日”输入"<<endl;
cout<<"请输入:"<<endl;
cin>>a.y>>a.m>>a.d;
}
/*----------------------------------------------------------------------*///判断输入的年份是否正确
/*------------------------------------------------------------------*///判断是否是闰年......是为1
if((a.y%4==0)&&(a.y%100!=0))
{
j=29;
}
else j=28;
/*------------------------------------------------------------------*///判断是否是闰年......是为1
/*-------------------------------------------------------------------*///判断输入的月份是否正确
while((a.m>12)||(a.m<1))
{
cout<<"您输入的“月份”不合法,请重新输入"<<endl;
cout<<"请按“月日”输入(这次只需输入月份和日子)"<<endl;
cout<<"请输入:"<<endl;
cin>>a.m>>a.d;
}
/*-------------------------------------------------------------------*///判断输入的月份是否正确
/*-------------------------------------------------------------------*///判断日子是否正确
if(a.m==2)
{
switch(j)
{
case 29:{while(a.d>29||a.d<1)
{
cout<<"您输入的“日子”不合法,请重新输入"<<endl;
cout<<"这次只需输入日子"<<endl;
cout<<"请输入:"<<endl;
cin>>a.d;
}break;
}
case 28:{while(a.d>28||a.d<1)
{
cout<<"您输入的“日子”不合法,请重新输入"<<endl;
cout<<"这次只需输入日子"<<endl;
cout<<"请输入:"<<endl;
cin>>a.d;
}break;
}
default :cout<<"出错啦!"<<endl; //1
}
}
else
switch (a.m)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:{while(a.d>31||a.d<1)
{
cout<<"您输入的“日子”不合法,请重新输入"<<endl;
cout<<"这次只需输入日子"<<endl;
cout<<"请输入:"<<endl;
cin>>a.d;
}break;
}
case 4:
case 6:
case 9:
case 11:{while(a.d>30||a.d<1)
{
cout<<"您输入的“日子”不合法,请重新输入"<<endl;
cout<<"这次只需输入日子"<<endl;
cout<<"请输入:"<<endl;
cin>>a.d;
}break;
}
default:cout<<"出错啦!!"<<endl;
}
//2
/*-------------------------------------------------------------------*///判断日子是否正确
/*---------------------------------------------------------------------------*///计算天数
switch(j)
{
case 29:{switch(a.m)
{
case 1:{g=a.d;break;}
case 2:{g=31+a.d;break;}
case 3:{g=31+29+a.d;break;}
case 4:{g=31+29+31+a.d;break;}
case 5:{g=31+29+31+30+a.d;break;}
case 6:{g=31+29+31+30+31+a.d;break;}
case 7:{g=31+29+31+30+31+30+a.d;break;}
case 8:{g=31+29+31+30+31+30+31+a.d;break;}
case 9:{g=31+29+31+30+31+30+31+31+a.d;break;}
case 10:{g=31+29+31+30+31+30+31+31+30+a.d;break;}
case 11:{g=31+29+31+30+31+30+31+31+30+31+a.d;break;}
case 12:{g=31+29+31+30+31+30+31+31+30+31+30+a.d;break;}
default:{cout<<"出错啦!!!"<<endl;} //3
}break;
}
case 28:{switch(a.m)
{
case 1:{g=a.d;break;}
case 2:{g=31+a.d;break;}
case 3:{g=31+28+a.d;break;}
case 4:{g=31+28+31+a.d;break;}
case 5:{g=31+28+31+30+a.d;break;}
case 6:{g=31+28+31+30+31+a.d;break;}
case 7:{g=31+28+31+30+31+30+a.d;break;}
case 8:{g=31+28+31+30+31+30+31+a.d;break;}
case 9:{g=31+28+31+30+31+30+31+31+a.d;break;}
case 10:{g=31+28+31+30+31+30+31+31+30+a.d;break;}
case 11:{g=31+28+31+30+31+30+31+31+30+31+a.d;break;}
case 12:{g=31+28+31+30+31+30+31+31+30+31+30+a.d;break;}
default:{cout<<"出错啦!!!!"<<endl;} //4
}break;
}
default :cout<<"出错啦!!!!!"<<endl; //5
}
/*-------------------------------------------------------------------------------*///计算天数
cout<<endl<<"计算完毕"<<endl;
cout<<a.y<<"/"<<a.m<<'/'<<a.d<<"是"<<a.y<<"的第"<<g<<"天"<<endl;
cout<<"您还需要继续判断吗?(输入1继续,输入0退出)"<<endl;
cin>>i;
while(i!=0&&i!=1)
{
cout<<"您还需要继续判断吗?(输入1继续,输入0退出)"<<endl;
cin>>i;
}
}
return 0;
}
using namespace std;
int main()
{
/*--------------------------------------------------------------------------*///定义结构体的变量
int j,g,i=1;
struct N
{
int y;
int m;
int d;
}a;
/*--------------------------------------------------------------------------*///定义结构体的变量
/*----------------------------------------------------------------------*///判断输入的年份是否正确
while(i==1)
{
cout<<"请按“年月日”输入"<<endl;
cout<<"请输入:"<<endl;
cin>>a.y>>a.m>>a.d;
while(a.y<=0)
{
cout<<"您输入的“年份”不合法,请重新输入"<<endl;
cout<<"请按“年月日”输入"<<endl;
cout<<"请输入:"<<endl;
cin>>a.y>>a.m>>a.d;
}
/*----------------------------------------------------------------------*///判断输入的年份是否正确
/*------------------------------------------------------------------*///判断是否是闰年......是为1
if((a.y%4==0)&&(a.y%100!=0))
{
j=29;
}
else j=28;
/*------------------------------------------------------------------*///判断是否是闰年......是为1
/*-------------------------------------------------------------------*///判断输入的月份是否正确
while((a.m>12)||(a.m<1))
{
cout<<"您输入的“月份”不合法,请重新输入"<<endl;
cout<<"请按“月日”输入(这次只需输入月份和日子)"<<endl;
cout<<"请输入:"<<endl;
cin>>a.m>>a.d;
}
/*-------------------------------------------------------------------*///判断输入的月份是否正确
/*-------------------------------------------------------------------*///判断日子是否正确
if(a.m==2)
{
switch(j)
{
case 29:{while(a.d>29||a.d<1)
{
cout<<"您输入的“日子”不合法,请重新输入"<<endl;
cout<<"这次只需输入日子"<<endl;
cout<<"请输入:"<<endl;
cin>>a.d;
}break;
}
case 28:{while(a.d>28||a.d<1)
{
cout<<"您输入的“日子”不合法,请重新输入"<<endl;
cout<<"这次只需输入日子"<<endl;
cout<<"请输入:"<<endl;
cin>>a.d;
}break;
}
default :cout<<"出错啦!"<<endl; //1
}
}
else
switch (a.m)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:{while(a.d>31||a.d<1)
{
cout<<"您输入的“日子”不合法,请重新输入"<<endl;
cout<<"这次只需输入日子"<<endl;
cout<<"请输入:"<<endl;
cin>>a.d;
}break;
}
case 4:
case 6:
case 9:
case 11:{while(a.d>30||a.d<1)
{
cout<<"您输入的“日子”不合法,请重新输入"<<endl;
cout<<"这次只需输入日子"<<endl;
cout<<"请输入:"<<endl;
cin>>a.d;
}break;
}
default:cout<<"出错啦!!"<<endl;
}
//2
/*-------------------------------------------------------------------*///判断日子是否正确
/*---------------------------------------------------------------------------*///计算天数
switch(j)
{
case 29:{switch(a.m)
{
case 1:{g=a.d;break;}
case 2:{g=31+a.d;break;}
case 3:{g=31+29+a.d;break;}
case 4:{g=31+29+31+a.d;break;}
case 5:{g=31+29+31+30+a.d;break;}
case 6:{g=31+29+31+30+31+a.d;break;}
case 7:{g=31+29+31+30+31+30+a.d;break;}
case 8:{g=31+29+31+30+31+30+31+a.d;break;}
case 9:{g=31+29+31+30+31+30+31+31+a.d;break;}
case 10:{g=31+29+31+30+31+30+31+31+30+a.d;break;}
case 11:{g=31+29+31+30+31+30+31+31+30+31+a.d;break;}
case 12:{g=31+29+31+30+31+30+31+31+30+31+30+a.d;break;}
default:{cout<<"出错啦!!!"<<endl;} //3
}break;
}
case 28:{switch(a.m)
{
case 1:{g=a.d;break;}
case 2:{g=31+a.d;break;}
case 3:{g=31+28+a.d;break;}
case 4:{g=31+28+31+a.d;break;}
case 5:{g=31+28+31+30+a.d;break;}
case 6:{g=31+28+31+30+31+a.d;break;}
case 7:{g=31+28+31+30+31+30+a.d;break;}
case 8:{g=31+28+31+30+31+30+31+a.d;break;}
case 9:{g=31+28+31+30+31+30+31+31+a.d;break;}
case 10:{g=31+28+31+30+31+30+31+31+30+a.d;break;}
case 11:{g=31+28+31+30+31+30+31+31+30+31+a.d;break;}
case 12:{g=31+28+31+30+31+30+31+31+30+31+30+a.d;break;}
default:{cout<<"出错啦!!!!"<<endl;} //4
}break;
}
default :cout<<"出错啦!!!!!"<<endl; //5
}
/*-------------------------------------------------------------------------------*///计算天数
cout<<endl<<"计算完毕"<<endl;
cout<<a.y<<"/"<<a.m<<'/'<<a.d<<"是"<<a.y<<"的第"<<g<<"天"<<endl;
cout<<"您还需要继续判断吗?(输入1继续,输入0退出)"<<endl;
cin>>i;
while(i!=0&&i!=1)
{
cout<<"您还需要继续判断吗?(输入1继续,输入0退出)"<<endl;
cin>>i;
}
}
return 0;
}
相关文章推荐
- 输入年月日判断这天是当前年份的第几天
- switch case应用-输入年月日判断当年第几天
- 输入年月日判断是第几天
- 输入年月日,判断第几天
- 输入年月日并判断是该年第几天
- C语言 输入年月日判断是第几天
- 输入年月日 判断是第几天(判断闰年)
- 输入年月日判断是第几天
- 输入年月日判断这是一年中的第几天.
- 输入年月日,判断是这年的第几天(涉及到闰年的判断)
- c语言输入年月日,判断是这一年的第几天
- C#习题之输入年月日判断是当年第几天
- C语言之输入年月日 判断这一天为全年的第几天
- 输入年月日,判断改天是今年的第几天
- 输入年月日,判断是该年的第几天,还可以进一步判断从1年开始的第几天
- js判断输入的年月日是一年中的第几天
- python中利用Time模块判断输入年月日为该年第几天
- 输入年月日之后,自动判断当日为该年第几天,Python3
- 输入年月日,判断这一天是该年的第几天
- 04-输入年月日,判断是今年的第几天