西加加:6-2 时钟模拟

    技术2025-04-03  6

    一个Time类,数据成员有时、分、秒。要求模拟秒表,每次走一秒,满60秒进位,秒又从零开始计数。满60分进位,分又从零开始计数。输出时、分和秒的值。(使用重载++运算符实现)

    时间类定义:

    class MyTime

    测试程序样例:

    /* 请在这里填写答案 */ int main() { MyTime t1,t2(23,59,59),t3; cin>>t3; ++t1; cout<<t1<<endl; ++t2; cout<<t2<<endl; ++t3; cout<<t3<<endl; return 0; }

    输入样例:

    12 35 59

    输出样例:

    0:0:1 0:0:0 12:36:0

    代码实现: 

    #include <iostream> using namespace std; class MyTime { int h,m,s; public: MyTime(int h0,int m0,int s0):h(h0),m(m0),s(s0) {} MyTime() { h=0; m=0; s=0; } MyTime operator++(); friend istream & operator >> (istream &,MyTime &); friend ostream & operator << (ostream &,MyTime &); }; MyTime MyTime::operator++() { s++; if(s==60) { s = 0; m++; } if(m==60) { m = 0; h++; } if(h==24) { h = 0; } return MyTime(); } istream & operator >> (istream &in,MyTime &T) { in >> T.h >> T.m >> T.s; return in; } ostream & operator << (ostream &out,MyTime &T) { out << T.h << ":" << T.m << ":" << T.s; return out; }

     

    Processed: 0.016, SQL: 9