zoukankan      html  css  js  c++  java
  • 实验6:Problem C: 时间和日期类(I)

    Description

    设计一个时间类和一个日期类,用于读取输入的数据,按格式输出日期和时间。

    设计日期类Date需支持以下操作:
    Date::Date(int,int,int)构造方法:传入的参数依次为年月日,用参数将日期初始化。
    Date::showDate()按格式输出Date对象。

    设计时间类Time需支持以下操作:
    Time::Time(int,int,int)构造方法:传入的参数依次为时分秒,用参数将时间初始化。
    Time::showTime()按格式输出Time对象。

    -----------------------------------------------------------------------------

    你设计Date类和Time类,使得main()函数能够正确运行。

    函数调用格式见append.cc。

    append.cc中已给出main()函数。

    Input

    输入的第一个整数n,表示有n组测试数据。

    后面的输入每行为一组测试数据。每组测试数据的前3个整数是日期的年月日,后3个整数是时间的时分秒。

    Output

    每组测试数据对应一行输出。日期的输出格式为“yyyy-mm-dd”,时间的输出格式为“hh:mm:ss”,中间用一个空格分开。

    Sample Input

    3 1982 10 1 0 0 0 2000 2 28 23 59 59 2014 7 2 13 30 01

    Sample Output

    1982-10-01 00:00:00 2000-02-28 23:59:59 2014-07-02 13:30:01

    HINT

    输出格式用头文件<iomanip>中流操作算子:

    setw(w)   :设置数据的输出宽度为w个字符

    setfill(c):设置用字符c作为填充字符

    Append Code

     1 #include<iostream>
     2 #include<iomanip>
     3 using namespace std;
     4 class Date{
     5 private:
     6     int y,m,d;
     7 public:
     8     Date(int yy,int mm,int dd):y(yy),m(mm),d(dd){}
     9     void showDate(){cout<<setw(2)<<setfill('0')<<y<<"-"<<setw(2)<<setfill('0')<<m<<"-"<<setw(2)<<setfill('0')<<d;}
    10 };
    11 class Time{
    12 private:
    13     int h,m,s;
    14 public:
    15     Time(int hh,int mm,int ss):h(hh),m(mm),s(ss){}
    16     void showTime(){cout<<setw(2)<<setfill('0')<<h<<":"<<setw(2)<<setfill('0')<<m<<":"<<setw(2)<<setfill('0')<<s;}
    17 };
    18 int main()
    19 {
    20     int cases;
    21     cin >> cases;
    22     for(int ca = 0; ca < cases; ca++)
    23     {
    24         int year, month, day;
    25         cin >> year >> month >> day;
    26         Date date(year, month, day);
    27         date.showDate();
    28         cout << " ";
    29         int hour, minute, second;
    30         cin >> hour >> minute >> second;
    31         Time time(hour, minute, second);
    32         time.showTime();
    33         cout << endl;
    34     }
    35 }
    向代码最深处出发~!
  • 相关阅读:
    08-蓝图&单元测试
    07-多对多操作
    JAVA 判断字符串是否可转化为JSONObject、JSONArray
    git常用命令
    线程和进程的一些基本概念
    JavaWeb学习总结(七):通过Servlet生成验证码及其应用 (BufferedImage类)
    JavaWeb学习总结(十):Session简单使用
    Ubuntu16.04 安装maven
    Ubuntu16.04 安装redis
    Ubuntu16.04 下安装tomcat
  • 原文地址:https://www.cnblogs.com/auto1945837845/p/5383894.html
Copyright © 2011-2022 走看看