将输入时间各增加1小时,1分钟,1秒.

/* *Copyright(c)2014,烟台大学计算机学院 *All rights reserved. *文件名称:test.cpp *作者:杨汉宁 *完成日期:2015年 3月 18日 *版本号:v1.0 *问题描述:将原时间增加一小时,,一分钟,一秒。 *输入描述:输入小时:分钟:秒。 *程序输出:变化后的时间*/#include <iostream>using namespace std;class Time{public:void set_time( );void show_time( );void add_a_sec(int n);//增加1秒钟void add_a_minute(int n);//增加1分钟void add_an_hour(int n);//增加1小时private:bool is_time(int, int, int); //这个成员函数设置为私有的,是合适的,请品味int hour;int minute;int sec;};void Time::set_time( ){char c1,c2;cout<<"请输入时间(格式hh:mm:ss)";while(1){ cin>>hour>>c1>>minute>>c2>>sec;if(c1!=':'||c2!=':')cout<<"格式不正确,请重新输入"<<endl;else if (!is_time(hour,minute,sec))cout<<"时间非法,请重新输入"<<endl;elsebreak;}}void Time::show_time( ){if (hour >24)hour=hour-24;//避免早成25 26小时情况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_a_sec(int n){sec=sec+n;if (sec>=60){minute+=(sec/60);sec=sec%60;}if (minute>=60){hour+=(minute/60);minute=minute%60;}}void Time::add_a_minute(int n){minute+=n;if (minute>=60){hour+=(minute/60);minute=minute%60;}}void Time::add_an_hour(int n){hour+=n;}int main( ){Time t1;t1.set_time( );t1.show_time( );t1.add_a_sec(1);t1.show_time();t1.add_a_minute(1);t1.show_time();t1.add_an_hour(1);t1.show_time();return 0;}

最困难之时,就是我们离成功不远之日。

将输入时间各增加1小时,1分钟,1秒.

相关文章:

你感兴趣的文章:

标签云: