第二周 项目3-时间类(1)

来源:互联网 发布:软件过程实验报告 编辑:程序博客网 时间:2024/06/14 05:52
/*  * Copyright (c) 2014, 烟台大学计算机学院  * All rights reserved.  * 文件名称:test.cpp  * 作    者:呼亚萍  * 完成日期:2015年 3月 18日  * 版 本 号:v1.0  *  * 问题描述:阅读、运行程序后,按要求扩充类的功能 * 程序输入:相应的程序 * 程序输出:在原类基础上,在类内增加成员函数 */#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();private:    bool is_time(int,int,int);    int hour;    int minute;    int 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<<hour<<":"<<minute<<":"<<sec;}bool Time::is_time(int h,int m,int s){    if(h<0||h>24||m>60||m<0||s>60||s<0)        return false;    else        return true;}inline void Time::add_a_sec(){    sec++;    if(sec>59)    {        sec=0;      add_a_minute();    }}inline void Time::add_a_minute(){    minute++;    if(minute>59)    {        minute=0;       add_a_hour();    }}inline void Time::add_a_hour(){    hour++;    if(hour>23)    {        hour=0;    }}int main(){    Time t1;    t1.set_time();    cout<<"增加一秒后时间为:"<<endl;    t1.add_a_sec();    t1.show_time();    cout<<endl;    cout<<"增加一分钟后时间为:"<<endl;    t1.add_a_minute();    t1.show_time();    cout<<endl;    cout<<"增加一小时后时间为:"<<endl;    t1.add_a_hour();    t1.show_time();    return 0;}


运算结果:

知识点总结:

inline的使用,在类内的声明和类外定义

学习心得:

提前预习过的内容在实践时也会遇到新问题!

0 0
原创粉丝点击