m0_65892951 2022-01-01 23:03 采纳率: 85.7%
浏览 25
已结题

有一个题需要解答解惑

构造一个日期时间类Timedate,实现对日期(年月日)时间(时分秒)的设置及输出

  • 写回答

2条回答 默认 最新

  • 南七灵 2022-01-01 23:15
    关注
    
    #include <iostream>
    #include <iomanip>
    using namespace std;
    /**********Program**********/
    class Timedate
    {
    public:
        Timedate(int syear = 2000, int smonth = 1, int sdate = 1)
        { //构造函数完成所有私有成员的初始化
            year = syear;
            month = smonth;
            date = sdate;
            hh = 00;
            mm = 00;
            ss = 00;
        }
    
        void list(); //完成判断
        void putdate(int syear, int smonth, int sdate)
        { //完成年月日的设置
            year = syear;
            month = smonth;
            date = sdate;
        }
        void puttime(int hour, int minute, int second) //内联函数:完成时分秒的设置
        {
            hh = hour;
            mm = minute;
            ss = second;
        }
    
    private:
        int year, month, date, hh, mm, ss;
    };
    /**********  End  **********/
    void Timedate::list()
    {
        cout << "year/month/date :";
        switch (year)
        {
        case 2000:
            cout << "2000";
            break;
        case 2001:
            cout << "2001";
            break;
        case 2002:
            cout << "2002";
            break;
        case 2003:
            cout << "2003";
            break;
        case 2004:
            cout << "2004";
            break;
        case 2005:
            cout << "2005";
            break;
        }
        switch (month)
        {
        case 1:
            cout << '/' << "Jan";
            break;
        case 2:
            cout << '/' << "Feb";
            break;
        case 3:
            cout << '/' << "Mar";
            break;
        case 4:
            cout << '/' << "Apr";
            break;
        case 5:
            cout << '/' << "May";
            break;
        case 6:
            cout << '/' << "Jun";
            break;
        case 7:
            cout << '/' << "Jul";
            break;
        case 8:
            cout << '/' << "Aug";
            break;
        case 9:
            cout << '/' << "Sep";
            break;
        case 10:
            cout << '/' << "Oct";
            break;
        case 11:
            cout << '/' << "Nov";
            break;
        case 12:
            cout << '/' << "Dec";
            break;
        }
        cout << '/' << date << endl;
        cout << "hour:minite:second :";
        cout << hh << ':' << mm << ':' << ss << endl;
    }
    
    int main()
    {
        Timedate A(2004, 3, 3), B;
        A.list();
        B.list();
        B.putdate(2005, 10, 18);
        B.puttime(17, 30, 10);
        B.list();
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月10日
  • 已采纳回答 1月2日
  • 创建了问题 1月1日

悬赏问题

  • ¥50 AI大模型精调(百度千帆、飞浆)
  • ¥15 关于#c语言#的问题:我在vscode和codeblocks中编写c语言时出现打不开源文件该怎么办
  • ¥15 非科班怎么跑代码?如何导数据和调参
  • ¥15 福州市的全人群死因监测点死亡原因报表
  • ¥15 Altair EDEM中生成一个颗粒,并且各个方向没有初始速度
  • ¥15 系统2008r2 装机配置推荐一下
  • ¥500 服务器搭建cisco AnyConnect vpn
  • ¥15 悬赏Python-playwright部署在centos7上
  • ¥15 psoc creator软件有没有人能远程安装啊
  • ¥15 快速扫描算法求解Eikonal方程咨询