⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ep4_3.cpp

📁 这里有大量的c语言习题呢!真的是题海哦
💻 CPP
字号:
/*4.3  构造一个日期时间类(Timedate),数据成员包括年、月、日和时、分、秒,
函数成员包括设置日期时间和输出时间,其中年、月请用枚举类型,并完成测试。
(包括用成员函数和用普通函数)*/
#include <iostream>
#include <iomanip>
using namespace std;

enum YR{Y2000,Y2001,Y2002,Y2003,Y2004,Y2005};//
enum MT{Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec};
class Timedate{
private:
	YR year;
	MT month;
	int date;
	int hh;
	int mm;
	int ss;
public:
	Timedate(){year=Y2000;month=Jan;date=1;hh=0;mm=0;ss=0;}
	Timedate(YR a,MT b,int c){
		year=a;
		month=b;
		date=c;
		hh=12;mm=30;ss=0;
	}
	void getdate(YR &,MT &,int &);//使用引用一次取得3个数值
	void gettime(int &,int &,int &);
	void putdate(YR ,MT ,int );
	void puttime(int ,int ,int );
	void list();
};
void Timedate::getdate(YR &y,MT &m,int &d){
	y=year;
	m=month;
	d=date;
}
void Timedate::gettime(int &a,int &b,int &c){
	a=hh;
	b=mm;
	c=ss;
}
void Timedate::putdate(YR a,MT b,int c){
	year=a;
	month=b;
	date=c;
}
void Timedate::puttime(int a,int b,int c){
	hh=a;
	mm=b;
	ss=c;
}
void Timedate::list(){//成员函数,直接访问私有的数据成员
	cout<<"year/month/date :";
	switch(year){
	case Y2000:cout<<"2000";break;
	case Y2001:cout<<"2001";break;
	case Y2002:cout<<"2002";break;
	case Y2003:cout<<"2003";break;
	case Y2004:cout<<"2004";break;
	case Y2005:cout<<"2005";break;
	}
	switch(month){//,,,,,,,,
	case Jan:cout<<'/'<<"Jan";break;
	case Feb:cout<<'/'<<"Feb";break;
	case Mar:cout<<'/'<<"Mar";break;
	case Apr:cout<<'/'<<"Apr";break;
	case May:cout<<'/'<<"May";break;
	case Jun:cout<<'/'<<"Jun";break;
	case Jul:cout<<'/'<<"Jul";break;
	case Aug:cout<<'/'<<"Aug";break;
	case Sep:cout<<'/'<<"Sep";break;
	case Oct:cout<<'/'<<"Oct";break;
	case Nov:cout<<'/'<<"Nov";break;
	case Dec:cout<<'/'<<"Dec";break;
	}
	cout<<'/'<<date<<endl;
	cout<<"hour:minite:second :";
	cout<<hh<<':'<<mm<<':'<<ss<<endl;
}

void list(Timedate td){//普通函数,通过接口函数访问私有的数据成员
	YR year;
	MT month;
	int date;
	int hh;
	int mm;
	int ss;

	td.getdate(year,month,date);
	cout<<"year/month/date :";
	switch(year){
	case Y2000:cout<<"2000";break;
	case Y2001:cout<<"2001";break;
	case Y2002:cout<<"2002";break;
	case Y2003:cout<<"2003";break;
	case Y2004:cout<<"2004";break;
	case Y2005:cout<<"2005";break;
	}
	switch(month){//,,,,,,,,
	case Jan:cout<<'/'<<"Jan";break;
	case Feb:cout<<'/'<<"Feb";break;
	case Mar:cout<<'/'<<"Mar";break;
	case Apr:cout<<'/'<<"Apr";break;
	case May:cout<<'/'<<"May";break;
	case Jun:cout<<'/'<<"Jun";break;
	case Jul:cout<<'/'<<"Jul";break;
	case Aug:cout<<'/'<<"Aug";break;
	case Sep:cout<<'/'<<"Sep";break;
	case Oct:cout<<'/'<<"Oct";break;
	case Nov:cout<<'/'<<"Nov";break;
	case Dec:cout<<'/'<<"Dec";break;
	}
	td.gettime(hh,mm,ss);
	cout<<'/'<<date<<endl;
	cout<<"hour:minite:second :";
	cout<<hh<<':'<<mm<<':'<<ss<<endl;
} 

int main(){
	Timedate A(Y2004,Mar,3),B;
	A.list();
	B.list();
	B.putdate(Y2005,Oct,18);
	B.puttime(17,30,00);
	list(B);
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -