码迷,mamicode.com
首页 > 编程语言 > 详细

【TOJ 5247】C++实验:时间和日期类

时间:2018-05-06 00:14:13      阅读:263      评论:0      收藏:0      [点我收藏+]

标签:表示   输出   style   ++   一个   main   实现   out   public   

描述

用C++实现日期类CDate和时间类CTime,并在次基础上利用多继承实现日期时间类CDateTime,使其能输出样例信息。

主函数里的代码已经给出,请补充完整,提交时请勿包含已经给出的代码。

int main()
{
	int y, m, d, hh, mm, ss;
	while(cin>>y>>m>>d>>hh>>mm>>ss)
	{
		CDateTime dt(y,m,d,hh,mm,ss);
		dt.Print();
		((CDate)dt).Print();
		((CTime)dt).Print();
	}
	return 0;
}

输入

输入数据有多组,每组占一行,每行为6个正整数,表示一个日期时间中的年、月、日、小时、分钟、秒。

日期信息保证有效。

输出

按样例格式输出日期时间、日期、时间等信息。

样例输入

 2000 3 1 12 9 9

样例输出

2000-3-1 12:9:9
2000-3-1
12:9:9

#include<iostream>
using namespace std;
class CDate{
    protected:
        int y,m,d;
    public:
        CDate();
        CDate(int y,int m,int d):y(y),m(m),d(d){} 
        void Print()
        {
            cout<<y<<"-"<<m<<"-"<<d<<endl;
        } 
};
class CTime{
    protected:
        int hh,mm,ss;
    public:
    CTime();
    CTime(int hh,int mm,int ss):hh(hh),mm(mm),ss(ss){}
    void Print()
    {
        cout<<hh<<":"<<mm<<":"<<ss<<endl;
    }
};
class CDateTime:public CDate,public CTime{
    public:
        CDateTime();
        CDateTime(int y,int m,int d,int hh,int mm,int ss):CDate(y,m,d),CTime(hh,mm,ss){}
        void Print()
        {
            cout<<CDate::y<<"-"<<CDate::m<<"-"<<CDate::d<<" "<<CTime::hh<<":"<<CTime::mm<<":"<<CTime::ss<<endl;
        }
};
int main()
{
    int y, m, d, hh, mm, ss;
    while(cin>>y>>m>>d>>hh>>mm>>ss)
    {
        CDateTime dt(y,m,d,hh,mm,ss);
        dt.Print();
        ((CDate)dt).Print();
        ((CTime)dt).Print();
    }
    return 0;
}

【TOJ 5247】C++实验:时间和日期类

标签:表示   输出   style   ++   一个   main   实现   out   public   

原文地址:https://www.cnblogs.com/kannyi/p/8996498.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!