第五周项目3 时间类的练习(1)

来源:互联网 发布:照片日历制作软件 编辑:程序博客网 时间:2024/05/17 01:19
/*  *Copyright(c) 2016,烟台大学计算机学院  *All rights reserved.  *文件名称:test2.cpp  *作    者:刘金石  *完成日期:2016年3月29日  *版本  号:v1.0  *问题描述:时间类的练习。 *输入描述:无。  *输出描述:输出时间。 */  <pre name="code" class="cpp">/* *Copyright(c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:test2.cpp *作    者:刘金石 *完成日期:2016年3月29日 *版本  号:v1.0 *问题描述:时间类的练习。 *输入描述:无。 *输出描述:输出时间。*/#include<iostream>using namespace std;class Time{public:    void set_time();    void show_time();    void add_a_sec()    {        sec+=1;    }    void add_a_minute()    {        minute+=1;    }    void add_a_hour()    {        hour+=1;    }private:    bool is_time(int ,int ,int );    int hour,minute,sec;};void Time::set_time(){    char c1,c2;    cout<<"请输入时间(格式hh:mm:ss)";    while(1)    {        cin>>hour>>c1>>minute>>c2>>sec;        if(c1!=':'||c2!=':')            cout<<"格式不正确重输"<<endl;        else if(!is_time(hour,minute,sec))            cout<<"时间非法!请重新输入:"<<endl;        else            break;    }}void Time::show_time(){    cout<<"时分秒各加一后:"<<endl;    if(!is_time(hour,minute,sec))        cout<<"时间非法!"<<endl;     else cout<<hour<<":"<<minute<<":"<<sec<<endl;}bool Time::is_time(int h,int m,int s){    if(h<0||h>24||m<0||m>60||s<0||s>60)        return false;    return true;}int main(){    Time t1;    t1.set_time();    t1.add_a_sec();    t1.add_a_minute();    t1.add_a_hour();    t1.show_time();    t1.set_time();    t1.add_a_sec();    t1.add_a_minute();    t1.add_a_hour();    t1.show_time();    return 0;}

运行结果:


0 0