在类函数中设计内置函数
来源:互联网 发布:入店来源 我的淘宝 编辑:程序博客网 时间:2024/04/30 02:07
/* (程序头部注释开始)* 程序的版权和版本声明部分* Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved.* 文件名称: * 作 者: 计114-3 苗影 * 完成日期: 2012 年 3 月 6 日* 版 本 号:
* 对任务及求解方法的描述部分* 输入描述: * 问题描述: * 程序输出: * 程序头部的注释结束*/
要求:请在原类基础上,增加下列成员函数,要求前三个设计成内置函数,在main()数中增加适当的调用以展示扩充类定义后的功能(最好能一次运行)。add_a_sec() //增加1秒钟add_a_minute() //增加1分钟add_an_hour() //增加1小时add_seconds(int) //增加n秒钟add_minutes(int) //增加n分钟add_hours(int) //增加n小时提示:要考虑增加后超出取值范围的情形#include <iostream>using namespace std;class Time{public: inlinevoid add_a_sec(); inline void add_a_minute(); inline void add_an_hour(); void add_seconds(int);void add_minutes(int);void add_hours(int);void set_time( ); void show_time( ); private: bool is_time(int, int, int);int hour;int minute;int sec;};int main( ){Time t1;int s,m,h;Time &t2=t1;t1.set_time( ); t2.show_time( ); t1.add_a_sec(); t1.add_a_minute(); t1.add_an_hour(); cout<<"增加一秒钟一分钟一小时后的时间为:"<<endl; t2.show_time( );cout<<"请输入秒数";cin>>s;t1. add_seconds(s);cout<<"请输入分数";cin>>m;t1. add_minutes(m);cout<<"请输入小时数";cin>>h;t1. add_hours(h);t2.show_time( );return 0;}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;else break;}}void Time ::add_a_sec(){//int sec;sec=sec+1;if(sec>=60){minute=minute+1;sec=0;}if(minute>=60){hour=hour+1;minute=0;}if(hour>24)hour=hour-24;}void Time::add_a_minute(){//int minute;minute=minute+1;if(minute>=60){hour=hour+1;minute=0;}if(hour>24)hour=hour-24;}void Time::add_an_hour(){//int hour;hour=hour+1;if(hour>24)hour=hour-24;}void Time ::add_seconds(int n){ //int seconds,n; sec=sec+n;if(sec>=60){//minute=minute+sec/60; add_minutes(sec/60);sec=sec%60;}if(minute>=60){//hour=hour+minute/60;add_hours(minute/60);minute=minute%60;}if(hour>24)hour=hour%24;}void Time ::add_minutes(int n){ // int minutes,n; minute=minute+n;if(minute>=60){//hour=hour+minute/60;add_hours(minute/60);minute=minute%60;}if(hour>24)hour=hour%24;}void Time ::add_hours(int n){ // int hours,n;hour=hour+n;if(hour>24)hour=hour%24;}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;}运行结果贴图:运行结果贴图:
- 在类函数中设计内置函数
- 在表达式中使用内置报表函数和聚合函数
- Python中 内置函数
- C++中内置函数
- Python3中一些类的内置函数
- 在smarty中调用php的内置函数
- 在smarty中调用php内置函数的方法
- 在C中调用lua的内置函数string.gsub
- 在smarty中调用php的内置函数
- 如何在spyder中查看python内置函数的源码
- 类、内置函数
- 【python】类内置函数
- Python中一些内置函数
- python中内置函数整理
- php中常用array内置函数,str内置函数
- 不允许在用户定义函数主体中内置不确定函数(SQL SERVER2000)
- 内置函数
- 内置函数
- Spring 3.x 企业应用开发实战(含CD光盘1张)
- 浅拷贝和深拷贝
- 关于最小Windows开发环境配置
- jvm垃圾回收参数配置
- OpenGL矩阵推导——模型视图变化(转载需写明作者)
- 在类函数中设计内置函数
- int to string
- char 与wchar_t 转换
- redis dict.h源码分析
- resolve channel trying
- "渐进式下载"的基础
- 【c++ primer】第十章 对象和类
- 静态获取时间,对于经常需要写注释的哥们们有福了!
- 简明 Vim 练级攻略