C++编程第4题

//输入某年某月某日,判断这一天是这一年的第几天?

#include <iostream>

using namespace std;

int main()
{
    int year,month,day,sum,leap;
    cout<<"Please input the year:";
    cin>>year;
    cout<<"Please input the month:";
    cin>>month;
    cout<<"Please input the day:";
    cin>>day;
    switch(month){
        case 1:sum=0;break;
        case 2:sum=31;break;
        case 3:sum=59;break;
        case 4:sum=90;break;
        case 5:sum=120;break;
        case 6:sum=151;break;
        case 7:sum=181;break;
        case 8:sum=212;break;
        case 9:sum=243;break;
        case 10:sum=273;break;
        case 11:sum=304;break;
        case 12:sum=334;break;
        default:cout<<"DATA ERROR!";break;
    }
    sum=sum+day;
    //判断闰年or平年
    if(year%400==0||(year%4==0&&year%100!=0)){
        leap=1;
    }else{
        leap=0;
    }
    //特殊情况:闰年,当月份大约3时,要多加一天!
    if(leap==1&&month>2){
        sum++;
    }
    cout << "It is the " << sum << "th day." << endl;
    return 0;
}

你可能感兴趣的:(C++)