C++日期计算(某日期加减天数、两日期相差的天数) 您所在的位置:网站首页 闰年计算器代码 C++日期计算(某日期加减天数、两日期相差的天数)

C++日期计算(某日期加减天数、两日期相差的天数)

2023-12-01 12:30| 来源: 网络整理| 查看: 265

文章目录 实验要求源代码输出结果:

实验要求

二、实验内容 设计一个日期类Date,包括年、月、日等私有数据成员。要求实现日期的基本运算,如某日期加上天数、某日期减去天数、两日期相差的天数等。 三、实验要求 在Date类中设计如下重载运算符函数: Date operator+(int days):返回某日期加上天数得到的日期 Date operator-(int days):返回某日期减去天数得到的日期 int operator-(Date&b):返回两日期相差的天数 在实现这些重载运算符函数时调用以下私有成员函数: leap(int):判断指定的年份是否为闰年

源代码 //Date.h #pragma once #include using namespace std; class Date { int year; int month; int day; int leap(int); int md2d(int leap, int month, int day); public: Date(int y, int m, int d); Date(); friend ostream& operator {31,28,31,30,31,30,31,31,30,31,30,31}, {31,29,31,30,31,30,31,31,30,31,30,31} }; int Date::leap(int y) { return (y % 4 == 0 && y % 100 != 0 || y % 400 == 0); } int Date::md2d(int leap, int month, int day) { for (int i = month-2; i >= 0; i--) { day += day_tab[leap][i]; } return day; } Date::Date(int y, int m, int d) { year = y; month = m; day = d; } Date::Date() { cout year; cout month; cout day; } Date Date::operator+(int days) { days += md2d(leap(year), month, day); //0 y--; days += y2d(y); } //d2md int m = 1; int d1; while ((d1 = days - day_tab[leap(y)][m - 1]) > 0) { days = d1; m++; } Date dt(y, m, days); return dt; } Date Date::operator-(int days) { return *this + (-days); } int Date::operator-(Date& b) { int d1 = md2d(leap(year), month, day); int d2 = md2d(leap(b.year), b.month, b.day); int ds = d1 - d2; int y1 = year; int y2 = b.year; while (y1 > y2) { y1--; ds += y2d(y1); } while (y1 os Date d1; int day; cout day; Date d2 = d1 - day; cout cout


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有