2015年第二周项目三(2):时间类

来源:互联网 发布:程序员面试着装 编辑:程序博客网 时间:2024/05/17 00:53
#include <iostream>using namespace std;class Time{public:    void set_time( );    void show_time( );    void add_a_sec( );    void add_a_minute( );    void add_a_hour( );    void add_a_sec(int n);    void add_a_minute(int n);    void add_a_hour(int n);private:    bool is_time(int, int, int);   //这个成员函数设置为私有的,是合适的,请品味    int hour;    int minute;    int sec;};void Time::add_a_sec(){    sec=sec+1;    if(sec>59)    {        sec=sec-60;        minute=minute+1;    }}void Time::add_a_minute(){    minute=minute+1;    if(minute>59)    {        minute=minute-60;        hour=hour+1;    }}void Time::add_a_hour(){    hour=hour+1;}void Time::add_a_sec(int n){    sec=sec+n;    if(sec>59)    {        sec=sec-60;        minute=minute+1;    }}void Time::add_a_minute(int n){    minute=minute+n;    if(minute>59)    {        minute=minute-60;        hour=hour+1;    }}void Time::add_a_hour(int n){    hour=hour+n;}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<<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;    int r;    t1.set_time( );    t1.add_a_sec();    t1.add_a_minute();    t1.show_time();    cout<<"请输入增加的时间:"<<endl;    cin>>r;    t1.add_a_minute(r);    t1.add_a_hour(r);    t1.add_a_sec(r);    t1.show_time();    return 0;}

0 0
原创粉丝点击