zoukankan      html  css  js  c++  java
  • C++走向远洋——27(项目三,时间类)

    */
     * Copyright (c) 2016,烟台大学计算机与控制工程学院
     * All rights reserved.
     * 文件名:time.cpp
     * 作者:常轩
     * 微信公众号:Worldhello
     * 完成日期:2016年3月30日
     * 版本号:V1.0
     * 问题描述:时间类
     * 程序输入:hh:mm:ss
     * 程序输出:见运行结果
     */
    #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:
    	   int sec;
    	   int minute;
    	   int hour;
    	   bool is_time(int,int,int);
       };
    void Time::set_time()
    {
    	char c1,c2;
        cout<<"请输入时间(格式hh:mm:ss)"<<endl;
    	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;
    }
    inline void Time::add_a_sec()
    {
        sec++;
        if(sec>59)
        {
            sec=0;
            minute++;
            if(minute>59)
            {
                hour++;
                minute=0;
            }
        }
    }
    inline void Time::add_a_minute()
    {
        minute++;
            if(minute>59)
            {
                hour++;
                minute=0;
            }
    
    }
    inline void Time::add_a_hour()
    {
        hour++;
        if(hour>23)
            hour=hour-24;
    }
    int main()
       {
    	   Time t1;
    	   t1.set_time();
           t1.add_a_sec();
    	   t1.add_a_minute();
    	   t1.add_a_hour();
    	   t1.show_time();
           return 0;
       }
    运行结果:
    

    心得:

          弄清楚,类内的变量和程序运行的步骤,就行了,其实这些东西都是语法

  • 相关阅读:
    Annotation
    GIT的作用以及Versioncontrol为什么要用GIT
    Http协议
    人工智能的可怕与不可怕
    Makefile简易教程
    Node.js 学习笔记之一:学习规划 & 认知 Node.js
    《大教堂与集市》的启示 — 软件工程的另一种选择
    Git简易教程
    谈谈买书与读书
    clang编译器简介
  • 原文地址:https://www.cnblogs.com/chxuan/p/8232254.html
Copyright © 2011-2022 走看看