今年的第几天

来源:互联网 发布:腾讯云数据库怎么建站 编辑:程序博客网 时间:2024/05/08 19:55

题目描述

输入年、月、日,计算该天是本年的第几天。

输入

包括三个整数年(1<=Y<=3000)、月(1<=M<=12)、日(1<=D<=31)。

输出

输入可能有多组测试数据,对于每一组测试数据,输出一个整数,代表Input中的年、月、日对应本年的第几天。

样例输入

2012 12 212013 1 5

样例输出

356
5

#include<iostream>
using namespace std;
int main()
{
    int a,b,c;
    int leap,sum;
    while(cin>>a>>b>>c)
    {
        leap=1;
        if(a%400==0||a%4==0&&a%100!=0)//判断是否为闰年
        {
            leap=0;
        }
        if(b==1)//开始记录这个月份以前的天数
            sum=0;
        if(b==2)
            sum=31;
        if(b==3)
            sum=59;
        if(b==4)
            sum=90;
        if(b==5)
            sum=120;
        if(b==6)
            sum=151;
        if(b==7)
            sum=181;
        if(b==8)
            sum=212;
        if(b==9)
            sum=243;
        if(b==10)
            sum=273;
        if(b==11)
            sum=304;
        if(b==12)
            sum=334;
        if(leap==0&&b>2)//若为闰年且月份大于2,则多加一天
            sum=sum+c+1;
        else
            sum=sum+c;
        cout<<sum<<endl;
    }
    return 0;
}