您的位置:首页 > 其它

确定某年某月某天是该年的第几天

2016-04-13 22:22 337 查看
#include <iostream>

using namespace std;

struct Date{

int year;

int month;

int day;

};

int main()

{

  Date d;

  cin>>d.year>>d.month>>d.day;

  int temp;

  if(d.year%4==0||d.year%400==0&&d.year%100!=0)

    temp=0;

  else

    temp=1;

  int days;

  switch(d.month)

  {

      case 1:days=d.day;break;

      case 2:days=31+d.day;break;

      case 3:

          if(temp==0)

          {

              days=31+29+d.day;

          }

          else

            days=31+28+d.day;break;

      case 4:

          if(temp==0)

          {

              days=31+29+31+d.day;

          }

          else

            days=31+28+31+d.day;break;

      case 5:

          if(temp==0)

          {

              days=31+29+31+30+d.day;

          }

          else

            days=31+28+31+30+d.day;break;

      case 6:

          if(temp==0)

          {

              days=31+29+31+30+31+d.day;

          }

          else

            days=31+28+31+30+31+d.day;break;

      case 7:

          if(temp==0)

          {

              days=31+29+31+30+31+30+d.day;

          }

          else

            days=31+28+31+30+31+30+d.day;break;

      case 8:

          if(temp==0)

          {

              days=31+29+31+30+31+30+31+d.day;

          }

          else

            days=31+28+31+30+31+30+31+d.day;break;

      case 9:

          if(temp==0)

          {

              days=31+29+31+30+31+30+31+31+d.day;

          }

          else

            days=31+29+31+30+31+30+31+31+d.day;break;

      case 10:

          if(temp==0)

          {

              days=31+29+31+30+31+30+31+31+30+d.day;

          }

          else

            days=31+29+31+30+31+30+31+31+30+d.day;break;

      case 11:

          if(temp==0)

          {

              days=31+29+31+30+31+30+31+31+30+31+d.day;

          }

          else

            days=31+29+31+30+31+30+31+31+30+31+d.day;break;

      case 12:

          if(temp==0)

          {

              days=31+29+31+30+31+30+31+31+30+31+30+d.day;

          }

          else

            days=31+29+31+30+31+30+31+31+30+31+30+d.day;break;

  }

  cout<<days;

  return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: