求该日为本年第几天(新的简便的)

/* 
*Corpyright (c)2013,烟台大学计算机学院 
*All right reseved. 
*作者:赵加响 
*完成日期:2013年11月14日 
*版本号:v1.0 
*输入描述:输入年月日 
*问题描述:求该日为本年第几天 
*程序输出: 
*问题分析: 
*算法设计: 
*/  

#include<iostream>
using namespace std;
int days(int y,int m,int d);
int main()
{
    int year,month,day;
    cout<<"请输入年月日:"<<endl;
    cin>>year>>month>>day;
    cout<<"这是该年的第"<<days(year,month,day)<<"天"<<endl;
    return 0;
}
    int days(int y,int m,int d)
    {
        int sum=d;
        int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
        for(int i=1;i<m;i++)
        {
            sum+=a[i];
        }
        if(m>2&&((y%4==0&&y%100!=0)||y%400==0))
        //若闰年,且晚于二月,加一天。
            sum++;
            return sum;
    }


posted on 2013-11-14 21:06  you Richer  阅读(224)  评论(0编辑  收藏  举报