目录
题目链接:计算日期到天数转换_牛客题霸_牛客网 (nowcoder.com)
解题思路:
代码实现:
题目链接:计算日期到天数转换_牛客题霸_牛客网 (nowcoder.com)
解题思路:
用一个数组存放每月的天数 输入的日期天数= 当月的天数 + 当月之前的累积天数 如果包含二月,再去判断是否为闰年,如果是闰年,再加1天
代码实现:
#include <iostream>
using namespace std;
//判断闰年
bool isLeap(int year)
{
return ((year%4==0&&year%100!=0)||(year%400==0));
}
//得到每个月对应的天数
int GetDaysByYM(int year,int month)
{
int days[13]={29,31,28,31,30,31,30,31,31,30,31,30,31};
if(month==2&&isLeap(year))
{
month=0;
}
return days[month];
}
//根据年月日来计算累加的天数
int GetDaysByYMD(int year,int month,int day)
{
int days=0;
for(int i=1;i<month;i++)
{
days+=GetDaysByYM(year,i);
}
days+=day;
return days;
}
int main()
{
int year,month,day;
int days=0;
while(cin>>year>>month>>day)
{
days=GetDaysByYMD(year,month,day);
cout<<days<<endl;
}
return 0;
}