早教吧 育儿知识 作业答案 考试题库 百科 知识分享

定义以下两个类定义一个满足如下要求的CDate类:(1)使用日/月/年的格式输出日期;(2)定义日期增加一天或减少一天的函数.(3)定义设置日期的函数2.定义一个三角形类,计算三角形的周长

题目详情
定义以下两个类
定义一个满足如下要求的CDate类:
   (1) 使用日/月/年的格式输出日期;
   (2)定义日期增加一天或减少一天的函数.
  (3) 定义设置日期的函数
2.定义一个三角形类,计算三角形的周长和面积.
定义以上两个类
▼优质解答
答案和解析
#include 

class CDate {
static const int days_in_months[12];
int year, month, day;

static bool leap(int y) {
return y % 4 == 0 && y % 100 != 0 || y % 400 == 0;
}

static int max_day(int y, int m) {
if (m != 2) {
return days_in_months[m - 1];
}
return days_in_months[1] + leap(y) ? 1 : 0;
}
public:
CDate() {
year = 0;
month = 1;
day = 1;
}
CDate(int y, int m, int d) {
year = y;
month = m;
day = d;
}
CDate operator++(int) {
CDate temp = *this;
++(*this);
return temp;
}
CDate& operator++() {
day++;
if (day > max_day(year, month)) {
month++;
day = 1;
}
if (month > 12) {
month = 1;
year++;
}
return *this;
}
CDate operator--(int) {
CDate temp = *this;
--(*this);
return temp;
}
CDate& operator--() {
day--;
if (day < 1) {
month--;
}
if (month < 1) {
year--;
month = 12;
}
if (day < 1) {
day = max_day(year, month);
}
return *this;
}
CDate& setDate(int y, int m, int d) {
year = y;
month = m;
day = d;
return *(this);
}
friend std::ostream& operator<<(std::ostream& out, const CDate& date) {
out << date.day << "/" << date.month << "/" << date.year;
return out;
}
};

const int CDate::days_in_months[12] = 
{
31, 28, 31, 30,
31, 30, 31, 31,
30, 31, 30, 31
};

int main() {
CDate date1, date2;
date1.setDate(1900, 1, 1);
date2.setDate(2014, 2, 28);
std::cout << --date1 << std::endl << ++date2 << std::endl;
}
看了 定义以下两个类定义一个满足如...的网友还看了以下:

javastatic方法调用问题详解1.下列说法错误的有()A.在静态方法中可用this来调用本类  2020-05-13 …

古埃及国有天夜里全国有几十万个人类的大儿子同时暴毙是怎么回事?有很多人认为:不做亏心事,不怕鬼敲门  2020-07-03 …

在农业生产上,用生长素的类似物萘乙酸诱导无子果实的效果比用天然的生长素要明显,其原因是()A.萘乙  2020-07-15 …

在农业生产上,用生长素的类似物萘乙酸诱导无子果实的效果比用天然的生长素要明显,其原因是[]A.萘乙  2020-07-15 …

在农业生产上,用生长素的类似物萘乙酸诱导无子果实的效果比用天然的生长素要明显,其原因是()A.萘乙  2020-07-15 …

java知识4.下列说法错误的有()A.在类方法中可用this来调用本类的类方法B.在类方法中调用  2020-07-17 …

Shape类定义为抽象类,提供计算面积和计算体积的纯虚函数。TwoDimShape类和ThreeDi  2020-11-01 …

对自然灾害的认识不正确的是A.人们应该与天地为敌,通过“征服自然”来“消灭”自然灾害B.我们应该利用  2020-11-27 …

渔民利用鱼类的趋光性用灯光捕鱼,鱼类的趋光性属于()A.先天性行为B.后天性行为C.攻击行为D.繁殖  2020-12-09 …

人类常常利用蛾类的趋光性捕杀害虫.蛾类的这种趋光性属于()A.先天性行为B.后天性行为C.学习行为D  2020-12-09 …