【问题描述】
输入日期(年月日),输出它是该年的第几天。
【输入输出样例】
Input year,month,day:198131
Days of year: 60
#include<iostream>
using namespace std;
int main()
{
//先用数组把十二个月的日期分别写出来
int arr[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int y,m,d,sum; //定义y为年份,m为月份,d为日期,sum为该y年1月1到m月d日总天数
cout<<"Input year,month,day: ";
cin>>y>>m>>d;
//先判断是否为闰年,是的话二月就是有29天
//闰年判断方法:年份整除于4同时不整除于100 又或者 年份整除于四百为闰年
if((y%4==0 && y%100!=0) || y%400==0)
{
arr[1]=29;
}
//计算1月1日—m月1日(不包括m月1日)的总天数
for(int i=0;i<m-1;i++)
{
sum+= arr[i];
}
//加上m月1日-m月d日
sum+= d;
cout<<"Days of year: "<<sum;
}