计算输入日期在该年中为第几天,考虑闰年,我是初学者,为什么会出现如题的错误?怎么改?
#include
using namespace std;
struct Date
{
int year;
int month;
int day;
}date_count;
int main()
{
int MONTH[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int i,Number,count_month=0;
cin>>date_count.year>>date_count.month>>date_count.day;
if(date_count.year%4==0&&date_count.year%100!==0)
{
MONTH[2]=29;
cout<<"Rank in this leap year:"<<endl;
for(date_count.month=0;date_count.month<=12;)
count_month=count_month+MONTH[date_count.month-1];
Number=count_month+date_count.day;
}
else if(date_count.year%400==0)
{
MONTH[2]=29;
cout<<"Rank in this leap year:"<<endl;
for(date_count.month=0;date_count.month<=12;)
count_month=count_month+MONTH[date_count.month-1];
Number=count_month+date_count.day;
}
else
{
cout<<"Rank in this year:"<<endl;
for(i=0;i<=date_count.month;i++)
count_month=count_month+MONTH[i-1];
Number=count_month+date_count.day;
}
cout<<Number<<endl;
return 0;
}
|