早教吧作业答案频道 -->其他-->
*3.定义日期类型Date。要求有以下成员:(1)可以设置日期;(2)日期加一天操作;(3)输入函数,输很急啊!立刻!马上啊*3.定义日期类型Date。要求有以下成员:(1)可以设置日期;(
题目详情
*3. 定义日期类型Date。要求有以下成员: (1)可以设置日期; (2)日期加一天操作; (3)输入函数,输
很急啊!立刻!马上啊
*3. 定义日期类型Date。要求有以下成员:
(1)可以设置日期;
(2)日期加一天操作;
(3)输入函数,输入格式为:XXXX XX XX,如2010 4 13;
(4)输出函数,输出格式为:XXXX年XX月XX日,如2010年4月11日。
很急啊!立刻!马上啊
*3. 定义日期类型Date。要求有以下成员:
(1)可以设置日期;
(2)日期加一天操作;
(3)输入函数,输入格式为:XXXX XX XX,如2010 4 13;
(4)输出函数,输出格式为:XXXX年XX月XX日,如2010年4月11日。
▼优质解答
答案和解析
#include "iostream.h"
//判断year是否是闰年
bool isLeapYear(int year)
{
return (year%400==0 || (year%4==0 && year%100!=0));
}
//日期类
class Date
{
private:
int year;
int month;
int day;
public:
Date()
{}
Date(int year, int month, int day)
{
this->year = year;
this->month = month;
this->day = day;
}
//设置日期
void setDate(int year, int month, int day)
{
this->year = year;
this->month = month;
this->day = day;
}
//在当前日期的基础上增加一天
void addOneDay()
{
day++;
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
{
if(day > 31)
{
day -= 31;
month++;
}
break;
}
case 4:
case 6:
case 9:
case 11:
{
if(day > 30)
{
day -= 30;
month++;
}
break;
}
case 2:
{
if(isLeapYear(year))
{
if(day > 29)
{
day -= 29;
month++;
}
}
else
{
if(day > 28)
{
day -= 28;
month++;
}
}
break;
}
default:
{
break;
}
}
}
//输出函数,输出格式为:XXXX年XX月XX日,如2010年4月11日
void display()
{
cout< }
};
//输入函数,输入格式为:XXXX XX XX,如2010 4 13
Date InputDate()
{
int year, month, day;
Date now = Date();
cin>>year>>month>>day;
now.setDate(year, month, day);
return now;
}
void main()
{
Date now = Date();
cout< now = InputDate();
cout< now.display();
now.setDate(2011, 5, 31);
cout< now.display();
now.addOneDay();
cout< now.display();
}
//判断year是否是闰年
bool isLeapYear(int year)
{
return (year%400==0 || (year%4==0 && year%100!=0));
}
//日期类
class Date
{
private:
int year;
int month;
int day;
public:
Date()
{}
Date(int year, int month, int day)
{
this->year = year;
this->month = month;
this->day = day;
}
//设置日期
void setDate(int year, int month, int day)
{
this->year = year;
this->month = month;
this->day = day;
}
//在当前日期的基础上增加一天
void addOneDay()
{
day++;
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
{
if(day > 31)
{
day -= 31;
month++;
}
break;
}
case 4:
case 6:
case 9:
case 11:
{
if(day > 30)
{
day -= 30;
month++;
}
break;
}
case 2:
{
if(isLeapYear(year))
{
if(day > 29)
{
day -= 29;
month++;
}
}
else
{
if(day > 28)
{
day -= 28;
month++;
}
}
break;
}
default:
{
break;
}
}
}
//输出函数,输出格式为:XXXX年XX月XX日,如2010年4月11日
void display()
{
cout<
};
//输入函数,输入格式为:XXXX XX XX,如2010 4 13
Date InputDate()
{
int year, month, day;
Date now = Date();
cin>>year>>month>>day;
now.setDate(year, month, day);
return now;
}
void main()
{
Date now = Date();
cout< now = InputDate();
cout< now.display();
now.setDate(2011, 5, 31);
cout< now.display();
now.addOneDay();
cout< now.display();
}
看了*3.定义日期类型Date。要...的网友还看了以下:
-a中的a可以是什么数?选项:a.正数或负数.b.正数.c.负数.d.以上答案都不对 2020-04-09 …
以下各正方形的边长是无理数的是a面积为25的正方形b面积为16的正方形c面积为8的正方形d以下各正 2020-04-27 …
如果a是有理数,那么下列说法中正确的是A.a一定是正数B.-a一定是负数C.a一定是非负数D.以上 2020-05-13 …
设函数f(x)=sin(x+a),a为常数,有以下说法1.存在a使函数为非奇非偶函数设函数f(x) 2020-06-07 …
(2014•潍坊三模)已知函数f(x)定义域为D,若∀a,b,c∈D,f(a),f(b),f(c) 2020-06-08 …
已知函数f(x)定义域为D,若∀a,b,c∈D,f(a),f(b),f(c)都是某一三角形的三边长 2020-07-13 …
有一种数字游戏,可以产生“黑洞数”,操作步骤如下:第一步,任意写一个自然数(以下简称为原数);第二 2020-07-19 …
17,关于数组,以下描述错误的是:17、关于数组,以下描述错误的是:A.数组是一组类型相同的数据的 2020-07-29 …
下面是谋公司的工资表,用()来反映全厂工人的工资水平比较合适.人员经理领工工种一工种二学徒工资/元7 2020-11-04 …
SOS十万火急一个梯形的上底,下底的厘米数和高的厘米数都是奇数,那么梯形的面积的平方厘米数.(A既是 2020-12-19 …