Learn C++ step by step(2)

王朝vc·作者佚名  2006-01-08
宽屏版  字体: |||超大  

// using Dev C++ under WinXP

#include <iostream>

#include <cstdlib>

using namespace std; //standard c++ style about namespace

//define ADT Time

class Time

{

public:

Time(); //default constructor

void setTime(int,int,int);//set time for hours,minutes,seconds

void printMilitary(void);//print time using army's style

void printStandard(void);//print time using standart style

private:

int hour; //0-23

int minute;//0-59

int second;//0-59

};

//constructor Time() initionalize every variable to 0

Time::Time(void)

{

hour=minute=second=0;

}

//set time

void Time::setTime(int h,int m,int s)

{

hour=(h>=0&&h<24)?h:0;

minute=(m>=0&&m<=59)?m:0;

second=(s>=0&&s<=59)?s:0;

}

//print using army's style

void Time::printMilitary(void)

{

cout<<(hour<10?"0":"")<<hour<<":"

<<(minute<10?"0":"")<<minute<<":"

<<(second<10?"0":"")<<second<<endl;

}

//print using standard style

void Time::printStandard(void)

{

cout<<((hour==0||hour==12)?12:hour%12)<<":"

<<(minute<10?"0":"")<<minute<<":"

<<(second<10?"0":"")<<second

<<(hour<12?"AM":"PM")<<endl;

}

//testing for simple class Time

int main(void)

{

Time t;

cout<<"The initial military time is:";

t.printMilitary();

cout<<"\nThe initial standard time is:";

t.printStandard();

t.setTime(13,27,6);

cout<<"\n\nMilitary time after set time is:";

t.printMilitary();

cout<<"\n\nStandard time after set time is:";

t.printStandard();

t.setTime(99,99,99);

cout<<"\n\nAfter attempting invalid settings:\n"

<<"Military time is:";

t.printMilitary();

cout<<"Standard time is:";

t.printStandard();

cout<<endl;

system("pause");

return(0);

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有