设计MyTime类

题目内容:

设计一个MyTime类,成员函数SetTime()设置时间,print_12()以12(0-11)小时制显示时间(AM上午,PM下午),print_24()以24(0-23)小时制显示时间。


输入格式:

所需设置时间的时、分、秒


输出格式:

按照12小时制和24小时制依次显示时间,注意时间格式中的冒号是英文冒号,时分秒都是两位,AM,PM前有一个空格,晚上12:00是00:00:00 AM,中午十二点是00:00:00 PM。 


输入样例:

13 23 34


输出样例:

01:23:34 PM

13:23:34

#include<iostream>
using namespace std;
class MyTime
{
	private:
		int hour;
		int minute;
		int second;
	public:
		void SetTime(int,int,int);
		void print_12();
		void print_24();
};
void MyTime::SetTime(int h,int m,int s)
{
	hour=h;
	minute=m;
	second=s;
}
void MyTime::print_12()
{
	int hour_temp;    
    (hour - 12) >= 0 ? hour_temp = hour - 12 : hour_temp = hour;  
    if(hour-24>=0)  hour_temp=hour-24;   
    if (hour_temp<10)    
    {    
        cout << '0';    
    }    
    cout << hour_temp << ':';    
    if (minute<10)    
    {    
        cout << '0';    
    }    
    cout << minute << ':';    
    if (second<10)    
    {    
        cout << '0';    
    }    
    cout << second << ' ';    
    if (hour>=12&&hour<24)     
    {    
        cout << "PM" << endl;    
    }   
    else      
    {    
        cout << "AM" << endl;    
    }    
}
void MyTime::print_24()
{
	if(hour>=24)  
       hour=hour-24;  
    if (hour < 10)    
    {    
        cout << '0';    
    }    
    cout << hour << ':';    
    if (minute < 10)    
    {    
        cout << '0';    
    }    
    cout << minute << ':';    
    if (second < 10)    
    {    
        cout << '0';    
    }    
    cout << second;    
    cout << endl;   
}
int main()
{
	MyTime time;
	int h,m,s;
	cin>>h>>m>>s;
	time.SetTime(h,m,s);
	time.print_12();
	time.print_24();
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_41860749/article/details/80043569