• 一个C++钟表小实验


    好,在MOOC上学习C++,有个钟表小实验,一时兴起就跟着做了。。

    对于我来说还是有点新颖的……

    贴上代码

    #include<iostream>
    #include<windows.h>
    using namespace std;
    class Clock{
        private:    //数据成员一般为私有成员 
            int Hour;         //小时属性 
            int Minute;       //分钟属性 
            int Second;       //秒属性 
            float Price;      //价格属性 
        public:     //函数成员一般为公有成员 
            void Set(int h, int m, int s, float p);    //设置时间操作 
            void Run();                                //钟表运转操作 
            void Report_Time();                        //报时响铃操作 
            void Show_Time(){                          //显示时间操作
                cout<<Hour<<":"<<Minute<<":"<<Second;        
            };                          
                                
    };
    
    
    void Clock::Set(int h, int m, int s, float p)      //设置修改四个数据成员值的函数 
    { 
        Hour = h;
        Minute = m;
        Second = s;
        Price = p;
    }
    
    
    void Clock::Run()      //模拟钟表运行的函数 
    {
    
        for(int i=0; i<60; i++) 
        {
            Second++;
            if(Second == 60)
            {
                Second = 0;
                Minute++;
            }
                
            if(Minute == 60)
            {
                Minute = 0;
                Hour++;
            }
            if(Hour == 24)
                Hour = 0;
            cout<<"            
    ";     //不换行,返回当前行的首位 (先用空白行代替,避免出现后部分无法消去的情况)
            Sleep(1000);
            Show_Time(); 
        }
    }
    
    
    void Clock::Report_Time()
    {
        Show_Time();
        if(Minute==0 && Second==0)
        {
            for(int i=0; i<Hour; i++)
            {
                cout<<"07";
                Sleep(1000);
            }
        }
    }
    
    
    int main(){
        Clock clock;
        clock.Set(10,0,57,5.5);
        clock.Run();
    }

    依稀感觉,这是一个我曾经绞尽老汁想实现的功能丫,

    哈哈,果然,在本子上找了下,看~

    好,是时候实现这个了,O(∩_∩)O~

    #include<iostream>
    #include<windows.h>
    using namespace std;
    class Clock{
        private:    //数据成员一般为私有成员 
            int Day; 
            int Hour;         //小时属性 
            int Minute;       //分钟属性 
            int Second;       //秒属性 
            float Price;      //价格属性 
        public:     //函数成员一般为公有成员 
            void Set(int d, int h, int m, int s, float p);    //设置时间操作 
            void Run();                                //钟表运转操作 
            void Report_Time();                        //报时响铃操作 
            void Show_Time(){                          //显示时间操作
                cout<<"距离高考还有"<<Day<<""<<Hour<<"小时"<<Minute<<"分钟"<<Second<<"";        
            };                          
                                
    };
    
    
    void Clock::Set(int d, int h, int m, int s, float p)      //设置修改四个数据成员值的函数 
    { 
        Day = d;
        Hour = h;
        Minute = m;
        Second = s;
        Price = p;
    }
    
    
    void Clock::Run()      //模拟钟表运行的函数 
    {
    
        for(int i=0; i<600; i++) 
        {
            Second--;
            if(Second == -1)
            {
                Second = 60;
                Minute--;
            }
                
            if(Minute == -1)
            {
                Minute = 60;
                Hour--;
            }
            if(Hour == -1)
            {
                Hour = 24;
                Day--;        
            }
    
            cout<<"                        
    ";     //不换行,返回当前行的首位 (先用空白行代替,避免出现后部分无法消去的情况)
            Sleep(1000);
            Show_Time(); 
        }
    }
    
    
    void Clock::Report_Time()
    {
        Show_Time();
        if(Minute==0 && Second==0)
        {
            for(int i=0; i<Hour; i++)
            {
                cout<<"07";
                Sleep(1000);
            }
        }
    }
    
    
    int main(){
        Clock clock;
        clock.Set(100,10,0,57,5.5);
        clock.Run();
    }

    生活啊,总会给你一些意想不到的惊喜*^_^*!

  • 相关阅读:
    C结构体中数据的内存对齐问题
    vs2010编译vtk5.8.0 release版本失败的解决方法
    C/C++堆、栈及静态数据区详解 (转载)
    总结一下最近一个月在深圳做的东西
    Stack overflow的问题
    完美的js验证网址url(正则表达式)
    ArrayList,Vector,LinkedList的存储性能和特性
    web程序优化
    巧用 Windows 键盘快捷键
    禁止右键
  • 原文地址:https://www.cnblogs.com/fengyanlover/p/5070244.html
Copyright © 2020-2023  润新知