[YTU]_2865( 结构体--日期计算)

来源:互联网 发布:java log4j xml配置 编辑:程序博客网 时间:2024/05/19 00:56
已经声明了一个日期的结构体类型,如下
struct  Date{
int year;
int month;
int day;
};
定义一个日期变量,进行年、月、日的输入,计算该日期是本年中的第几天。
在下面代码的基础上完成,提交时只提交begin所在行和end所在行之间的代码
#include <iostream>
using namespace std;
 
struct Date{
int year;
int month;
int day;
};
 
int main()
{
  Date d;
  cin>>d.year>>d.month>>d.day;
  //bengin
 
  //end
  return 0;
}

输入

年 月  日

输出

该日期在本年中的第几天

样例输入

2002 3 1

样例输出

60

提示

别忘记考虑闰年

#include <iostream>using namespace std; struct Date{int year;int month;int day;}; int main(){  Date d;  cin>>d.year>>d.month>>d.day;  //bengin       if((d.year%4==0&&d.year%100!=0)||(d.year%400==0))    {        switch(d.month)        {        case 1:cout<<d.day<<endl;break;        case 2:cout<<31+d.day<<endl;break;        case 3:cout<<31+29+d.day<<endl;break;        case 4:cout<<31+29+31+d.day<<endl;break;        case 5:cout<<31+29+31+30+d.day<<endl;break;        case 6:cout<<31+29+31+30+31+d.day<<endl;break;        case 7:cout<<31+29+31+30+31+30+d.day<<endl;break;        case 8:cout<<31+29+31+30+31+30+31+d.day<<endl;break;        case 9:cout<<31+29+31+30+31+30+31+31+d.day<<endl;break;        case 10:cout<<31+29+31+30+31+30+31+31+30+d.day<<endl;break;         case 11:cout<<31+29+31+30+31+30+31+31+30+31+d.day<<endl;break;         case 12:cout<<31+29+31+30+31+30+31+31+30+31+30+d.day<<endl;break;         }    }    else    {        switch(d.month)        {        case 1:cout<<d.day<<endl;break;        case 2:cout<<31+d.day<<endl;break;        case 3:cout<<31+28+d.day<<endl;break;        case 4:cout<<31+28+31+d.day<<endl;break;        case 5:cout<<31+28+31+30+d.day<<endl;break;        case 6:cout<<31+28+31+30+31+d.day<<endl;break;        case 7:cout<<31+28+31+30+31+30+d.day<<endl;break;        case 8:cout<<31+28+31+30+31+30+31+d.day<<endl;break;        case 9:cout<<31+28+31+30+31+30+31+31+d.day<<endl;break;        case 10:cout<<31+28+31+30+31+30+31+31+30+d.day<<endl;break;         case 11:cout<<31+28+31+30+31+30+31+31+30+31+d.day<<endl;break;         case 12:cout<<31+28+31+30+31+30+31+31+30+31+30+d.day<<endl;break;         }    }   //end  return 0;}

原创粉丝点击