期中
1
#include "date.h" #include "utils.h" #include <iostream> using std::cout; using std::endl; /*class Date { public: Date(); // 默认构造函数,将日期初始化为1970年1月1日 Date(int y, int m, int d); // 带有形参的构造函数,用形参y,m,d初始化年、月、日 void display(); // 显示日期 int getYear() const; // 返回日期中的年份 int getMonth() const; // 返回日期中的月份 int getDay() const; // 返回日期中的日字 int dayOfYear(); // 返回这是一年中的第多少天 private: int year; int month; int day; };*/ Date::Date():year(1970),month(1),day(1){ } Date::Date(int y, int m, int d):year(y),month(m),day(d){ } void Date::display(){ cout<<year<<'-'<<month<<'-'<<day; } int Date::getYear() const{ return year; } int Date::getMonth() const{ return month; } int Date::getDay() const{ return day; } int Date::dayOfYear(){ int a1[13]={0,31,28,31,30,31,30,31,31,30,31,30,31},a2[13]={0,31,29,31,30,31,30,31,31,30,31,30,31},days=0,i; if(year%4==0&&year%100!=0||year%400==0) {for(i=0;i<=month-2;i++) days=days+a2[i]; days=days+day; } else {for(i=0;i<=month-1;i++) days=days+a1[i]; days=days+day; } return days; }