当前位置: 首页 > news >正文

C++根据如下使用类MyDate的程序,写出类MyDate的定义,MyDate中有三个数据成员:年year,月month,日day完成以下要求

题目:

根据如下使用类MyDate的程序,写出类MyDate的定义,MyDate中有三个数据成员:

年year,月month,日day

     int year,month,day;

   void main()

{

MyDate d1, d2;

d1.set(2015, 12, 31);

d2.set(d1);

d1.print();

cout << endl;

d2.print();

cout << endl;

cout << "d1.equals(d2)?" << d1.equals(d2) << endl;

        //equals  判断d1和d2是否相等,当年,月,日全相等时返回1;否则返回0

d1.print();

cout << "的明天是:";

d1.tomorrow();

d1.print();

}

程序运行结果如下:

   2015年12月31日

   2015年12月31日

   d1.equals(d2)?1

   2015年12月31日的明天是:2016年1月1日

实现代码:

#include<iostream>
using namespace std;
class MyDate
{
public:int year, month, day;void set(int year_, int month_, int day_){year = year_;month = month_;day = day_;}void set(MyDate n){year = n.year;month = n.month;day = n.day;}void print(){cout << year << "年" << month << "月" << day << "日";}int equals(MyDate m){if ((year == m.year) && (month == m.month) && (day == m.day)){return 1;}return 0;}void tomorrow(){if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){if ((month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10) && day == 31){month++;day = 1;}else if (month == 12 && day == 31){month = 1;day = 1;year++;}else if (month == 2 && day == 29){month++;day = 1;}else if ((month == 4 || month == 6 || month == 9 || month == 11) && day == 30){month++;day = 1;}else{day++;}}else{if ((month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10) && day == 31){month++;day = 1;}else if (month == 2 && day == 28){month++;day = 1;}else if ((month == 4 || month == 6 || month == 9 || month == 11) && day == 30){month++;day = 1;}else if (month == 12 && day == 31){year++;month = 1;day = 1;}else{day++;}}}};int main()
{MyDate d1, d2;d1.set(2015, 12, 31);d2.set(d1);d1.print();cout << endl;d2.print();cout << endl;cout << "d1.equals(d2)?" << d1.equals(d2) << endl;d1.print();cout << "的明天是:";d1.tomorrow();d1.print();return 0;
}

http://www.lryc.cn/news/134368.html

相关文章:

  • 微盟集团中报增长稳健 重点发力智慧零售AI赛道
  • 设计模式(7)模板方法模式
  • 2308C++协程流程9
  • 基于学习交流社区的自动化测试实现
  • 2023-08-21力扣每日一题
  • 对象存储服务-MinIO基本集成
  • Yarn介绍及快速安装 - Debian/Ubuntu Linux
  • 【新日语(2)】第10課 中国の生活に慣れるかどうか少し心配です
  • Python 网页解析初级篇:BeautifulSoup库的入门使用
  • Spring Schedular 定时任务
  • 营业额统计
  • 使用lodash的throttle函数会触发两次
  • 如何使用CSS实现一个瀑布流布局?
  • dfs之有重复字符串的排列组合
  • Java之抽象类
  • “无Internet连接但是可以上网” 解决全流程
  • VS2022 CMake报错解决小结
  • java之webservice_aegis.xml学习
  • 总结 TCP 协议的相关特性
  • 不负众望~历时4年修炼,这本册子终于成书了(文末赠书)
  • 【校招VIP】java语言考点之垃圾回收算法
  • juc概述和Lock接口
  • 图像降采样的计算原理:F.interpolate INTER_AREA
  • 云上的甜蜜早安:腾讯云云函数助力PHP打造女友专属每日推送
  • Javaweb基础学习(3)
  • 使用在 Web 浏览器中运行的 VSCode 实现 ROS2 测程法
  • 快速学习GO语言总结
  • 尚硅谷宋红康MySQL笔记 10-18
  • Java 面试题--SpringBoot篇
  • GitKraken 详细图文教程