C++第四周【任务2】利用多文件组织项目

来源:互联网 发布:淘宝hd登录接口不存在 编辑:程序博客网 时间:2024/04/30 07:23
*程序的版权和版本声明部分* Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved.* 文件名称:利用多文件组织项目                          * 作    者:李洪悬                              * 完成日期:  2012       年    3   月   13     日* 版 本 号:  
【任务2】针对第3周任务3,利用多文件组织项目。其中,项目包括3个文件:主文件: main.cpp,用于定义main()函数头文件: mytime.h,头文件类定义文件: mytime.cpp,用于定义类Time要求:(1)如果原任务的设计存在问题,要改正过来;(2)在报告中逐个文件进行说明,在报告最后要就多文档组织提出个人的观点。main.cppmytime.hmytime.cpp
//头文件 
class Time        {        public:                      void set_time( );      void show_time( );       inline void add_a_sec(); //增加1秒钟        inline void add_a_minute(); //增加1分钟       inline void add_an_hour(); //增加1小时       void add_seconds(int); //增加n秒钟         void add_minutes(int); //增加n分钟         void add_hours(int); //增加n小时                     private:             bool is_time(int, int, int);            int hour;            int minute;            int sec;      };  inline void Time::add_a_sec()  //增加1秒钟           {        add_seconds(1);                return;        }              inline void Time::add_a_minute() //增加1分钟           {         add_minutes(1);            return;        }              inline void Time::add_an_hour() //增加1小时           {            add_hours(1);        return;        }        
//源文件--主函数
#include <iostream>#include "time.h"  using namespace std; int sec2,minute2,hour2; int main( )        {            Time t1;          t1.set_time( );               t1.show_time( );            t1.add_a_sec();  //增加1秒钟              cout<<"增加一秒后的时间为:";            t1.show_time( );            t1.add_a_minute(); //增加1分钟             cout<<"增加一分钟后的时间为:";            t1.show_time( );            t1.add_an_hour(); //增加1小时            cout<<"增加一小时后的时间为:";            t1.show_time( );            cout<<"您想增加多少秒钟?请输入时间:";             cin>>sec2;            t1.add_seconds(sec2); //增加n秒钟             cout<<"增加"<<sec2<<"秒后的时间为:";            t1.show_time( );            cout<<"您想增加多少分钟?请输入时间:";             cin>>minute2;             t1.add_minutes(minute2); //增加n分钟            cout<<"增加"<<minute2<<"分钟后的时间为:";            t1.show_time( );             cout<<"您想增加多少小时?请输入时间:";             cin>>hour2;             t1.add_hours(hour2); //增加n小时             cout<<"增加"<<hour2<<"小时后的时间为:";            t1.show_time( );            system("PAUSE");            return 0;        }                   
源文件--成员函数
#include <iostream> #include "Time.h"using namespace std;int sec1,minute1,hour1;void Time::set_time( )         {            char c1,c2;            cout<<"请输入时间(格式hh:mm:ss)";            while(1)            {                cin>>hour>>c1>>minute>>c2>>sec;                hour1=hour;                minute1=minute;                sec1=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;        }                    void Time::add_seconds(int sec2)//增加n秒钟           {             sec=sec1;            minute=minute1;            hour=hour1;            sec=sec+sec2;           if(sec>60)          {              sec=sec%60;              minute=minute+sec/60;          }          if(minute>60)          {               minute=minute%60;              hour=hour+minute/60;              }                                   if(hour>23)          {              hour=hour-24;          }                    return;        }   void Time::add_minutes(int minute2) //增加n分钟           {           sec=sec1;            minute=minute1;            hour=hour1;            minute=minute+minute2;            if(minute>60)          {            minute=minute%60;              hour=hour+minute/60;                  }                                       if(hour>23)          {              hour=hour-24;          }          return;        }              void Time::add_hours(int hour2) //增加n小时           {            hour=hour1;            sec=sec1;            minute=minute1;            hour=hour+hour2;while(1){if(hour>23)      {      hour=hour-24;      } elsebreak;}    return;  }  

经验积累:内置函数要写在头文件中