C++第三次试验2.1

来源:互联网 发布:微波电路s参数矩阵 编辑:程序博客网 时间:2024/05/18 01:11
#include<iostream>using namespace std;class Time{  public:      Time(int=0,int=0,int=0);      void show_time( ); //根据is_24和from0,输出适合形式-20:23:5/8:23:5 pm/08:23:05 pm      void add_seconds(int); //增加n秒钟      void add_minutes(int); //增加n分钟        void add_hours(int); //增加n小时        static void change24();  //改变静态成员is_24,在12和24时制之间转换      static void changefrom0();   //改变静态成员from0,切换是否前导0  private:      static bool is_24; //为true时,24小时制,如20:23:5;为flase,12小时制,显示为8:23:5 pm       static bool from0; //为true时,前导0,8:23:5显示为08:23:05      int hour;      int minute;      int sec;  }; bool Time::is_24=true;bool Time::from0=false;Time::Time(int h,int m,int s){    hour=h;    minute=m;    sec=s;}void Time::show_time(){    int h;    if (is_24)        h=hour;    else        h=hour%12;if (from0&&h<10)        cout<<"0";    cout<<h<<":";if (from0&&minute<10)        cout<<"0";    cout<<minute<<":";if (from0&&sec<10)        cout<<"0";cout<<sec;    if (!is_24)        cout<<((hour>12)?" pm":" am")<<endl;else cout<<endl;    return;}void Time::add_seconds(int n){    int a;sec=sec+n;a=sec/60;if(sec>=60){add_minutes(a);sec=sec%60;}}void Time::add_minutes(int n){    int a;    minute=minute+n;a=minute/60;if(minute>=60){add_hours(a);minute=minute%60;}}void Time::add_hours(int n){hour=hour+n;    if(hour>=24){hour=hour%24;}    }void Time::change24(){is_24=!is_24;if(is_24)cout<<"已换为24小时制"<<endl;elsecout<<"已换为12小时制"<<endl;}void Time::changefrom0(){from0=!from0;if(from0)cout<<"已换为前导0输出"<<endl;elsecout<<"已换为非前导0输出"<<endl;}//下面写出静态成员的初始化及各成员函数的定义……  int main( )   {Time t1(23,15,10),t2(8,42,1);cout << "24时制, 不前导0:" << endl;      cout << " t1是:";      t1.show_time();      cout << " t2是:";      t2.show_time();      t1.add_hours(10);      t2.add_hours(10);      Time::changefrom0();      cout << "10小时后, 切换是否前导0:" << endl;      cout << "  t1是:";      t1.show_time();      cout << "  t2是:";      t2.show_time();      t1.change24();    cout << "换一种制式:" << endl;      cout << "  t1是:";      t1.show_time();      cout << "  t2是:";      t2.show_time();      return 0;  }

0 0
原创粉丝点击