时间类
来源:互联网 发布:淘宝网太极武术鞋 编辑:程序博客网 时间:2024/05/24 15:40
/* * Copyright (c) 2011, 烟台大学计算机学院 * All rights reserved. * 作 者:赵兰* 完成日期:2013 年 3 月 19日 * 版 本 号:v1.0 * 输入描述: 略 * 问题描述:实现时间累加。 * 问题分析: 在类的基础上运用内置函数* 算法设计:略 * 程序输出:如下 */ #include <iostream>using namespace std;class Time{public: //公用成员函数 void set_time( ); void show_time( ); inline void add_a_sec(); //声明内置函数 inline void add_a_minute(); inline void add_an_hour(); 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;};void Time::set_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; 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;}inline void Time::add_a_sec() { sec++; if(sec>60) add_a_minute(); } inline void Time::add_a_minute() { minute++; if(minute>60) add_an_hour(); } inline void Time::add_an_hour() { hour++; if(hour>23) hour=0; } void Time::add_seconds(int n) { sec+=n; if(sec>60) { add_minutes(sec/60); sec=sec%60; } } void Time::add_minutes(int n) { minute+=n; if(minute>60) { add_hours(minute/60); minute%=60; } } void Time::add_hours(int n) { hour+=n; if(hour>23) { hour=hour%24; } }int main(){ Time t1; Time &t2=t1; t1.set_time( ); cout<<"输出时间:"<<endl; t2.show_time( ); t1.add_a_sec(); cout<<"增加1秒后为:"<<endl; t1.show_time( ); t1.add_a_minute(); cout<<"增加一分钟后为:"<<endl; t2.show_time( ); t1.add_an_hour(); cout<<"增加一小时后为:"<<endl; t1.show_time( ); t1.add_seconds(70); cout<<"增加70秒后为:"<<endl; t1.show_time( ); t1.add_minutes(75); cout<<"增加75分钟后为:"<<endl; t1.show_time( ); t1.add_hours(5); cout<<"增加5小时后为:"<<endl; t1.show_time( ); return 0; }
少了一个括号找了大半天以后写程序括号成对成对的写
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 时间类
- 玩一下
- IOS 蓝牙语音通信
- 题目1221: 最大公约数
- ServerSocket用法详解
- Extjs组件理解
- 时间类
- linux中的启动tomcat和查看相关信息
- 实现套打功能
- 编写程序制作QR Code二维条码名片
- bool operator==(fun &a){if(this->a==a.a&&this->b==a.b)//为什么a.a可以访问a的私有成员
- 做出自己的back trace function
- (每日一转)黑马程序员----跟着老毕学Java-集合框架篇之Map与工具类
- 怎样量化评价搜索引擎的结果质量
- C++ static成员变量与static成员函数