1. /*
  2. *Copyright (c) 2015,烟台大学计算机学院
  3. *All rights reserved.
  4. *文件名称:text.cpp
  5. *作者:李德彪
  6. *完成日期:2015年3月25日
  7. *版本号:v1.0
  8. *
  9. *问题描述:设计时间类
  10. *输入描述:输入小时,分钟,秒
  11. *程序输出:输出时间
  12. */
  13. #include <iostream>
  14. using namespace std;
  15. class Time
  16. {
  17. public:
  18. void set_time();
  19. void show_time();
  20. void add_a_seconds()
  21. {
  22. sec++;
  23. if(sec>=60)
  24. {
  25. sec=sec-60;
  26. minute++;
  27. if(minute>=60)
  28. {
  29. minute=minute-60;
  30. hour++;
  31. }
  32. }
  33. }
  34. void add_a_minute()
  35. {
  36. minute++;
  37. if(minute>=60)
  38. {
  39. minute=minute-60;
  40. hour++;
  41. }
  42. }
  43. void add_an_hour()
  44. {
  45. hour++;
  46. }
  47. private:
  48. bool is_time(int ,int ,int );
  49. int hour;
  50. int minute;
  51. int sec;
  52. };
  53. void Time::set_time()
  54. {
  55. char c1,c2;
  56. cout<<"请输入时间(格式hh:mm:ss)";
  57. while(1)
  58. {
  59. cin>>hour>>c1>>minute>>c2>>sec;
  60. if(c1!=':'||c2!=':')
  61. {
  62. cout<<"格式不正确重输"<<endl;
  63. }
  64. else if(!is_time(hour,minute,sec))
  65. cout<<"时间非法,请重新输入 "<<endl;
  66. else
  67. break;
  68. }
  69. }
  70. void Time::show_time()
  71. {
  72. cout<<hour<<":"<<minute<<":"<<sec<<endl;
  73. if(!is_time(hour,minute,sec))
  74. cout<<"时间非法 "<<endl;
  75. }
  76. bool Time::is_time(int h,int m,int s)
  77. {
  78. if(h<0||h>24||m<0||m>60||s<0||s>60)
  79. return false;
  80. else
  81. return true;
  82. }
  83. int main()
  84. {
  85. Time t1;
  86. t1.set_time();
  87. t1.add_a_seconds();
  88. t1.add_a_minute();
  89. t1.add_an_hour();
  90. t1.show_time();
  91. return 0;
  92. }

第四周 20 时间类相关推荐

  1. Python Qt GUI设计:QCalendar日历类和QDateTimeEdit时间类(基础篇—20)

    目录 1.QCalendar日历类 2.QDateTimeEdit时间类 1.QCalendar日历类 QCalendar是一个日历控件,它提供了一个基于月份的视图,允许用户通过鼠标或键盘选择日期,默 ...

  2. Java的知识点22——时间处理相关类、Date时间类(java.util.Date)、DateFormat类和SimpleDateFormat类、Calendar日历类

    时间处理相关类 用long类型的变量来表示时间,获得现在时刻的"时刻数值":long now = System.currentTimeMillis(); Date时间类(java. ...

  3. [YTU]_2617(B C++时间类的运算符重载)

    题目描述 C++时间类的运算符重载 定义一个时间类Time,其数据成员为表示时间的小时(hour).分(minute),秒(second). 重载运算符"+",使之能用于时间对象的 ...

  4. [YTU]_2617( B C++时间类的运算符重载)

    C++时间类的运算符重载 定义一个时间类Time,其数据成员为表示时间的小时(hour).分(minute),秒(second). 重载运算符"+",使之能用于时间对象的加法运算: ...

  5. JDK7的日期时间类

    JDK7的日期时间类 Date类 1.概念 Date类表示时间,时间可以精确到毫秒.创建一个Date对象,其实就表示时间的对象 2.构造方法和成员方法 public class Demo1 {publ ...

  6. [19/03/16-星期六] 常用类_Date时间类DateFormat类

    一.Date时间类 计算机中 以1970 年 1 月 1 日 00:00:00定为基准时间,每个度量单位是毫秒(1秒的千分之一) 用ong类型的变量来表示时间,如当前时刻数值:long  now =n ...

  7. java时间类Date、Calendar及用法

    对于时间类,这篇主要说明各种现实情况下如何取值,怎么定向取值,得到自己想要的时间参数.在java中时间类主要有Date.Calendar,暂时只介绍 java.util.*下的时间类,对于java.s ...

  8. JAVA day13,14 API、Object类、日期时间类(long,Date,Calendar,DateFormat)、String类(字符串,可变长字符串)、正则表达式、包装类

    1.API API(Application Programming Interface),应⽤程序编程接⼝.Java API是⼀本程序员的"字 典",是JDK提供给我们使⽤的类的说 ...

  9. java8新日期时间类使用

    java8之后提供了新的日期和时间相关类,接口和枚举,放在了java.time包下(之前旧的日期时间类放在java.util包),使设置日期时间更加方便.java8的新日期时间类的设计,借鉴了joda ...

最新文章

  1. android studio安装在其他盘,Android Studio配置移动到D盘(亲测)
  2. 【Java】练习题:蒙眼过马路
  3. java最简单的并查集(不想交集合)以及杭电1272
  4. cocos2d-x游戏实例(24)-简易动作游戏(2)
  5. 什么是云原生,跟云计算有什么关系?终于有人讲明白了
  6. 利用Swipejs轻松实现手机上的图片手势切换
  7. sharepoint搭建文档服务器,SharePoint Server教程
  8. 南方cass10.1中文版
  9. 数据库容灾技术之–数据容灾技术比较
  10. 基于哈里斯鹰算法优化概率神经网络PNN的分类预测-附代码
  11. 问题 D: 寻找丢失的LZY
  12. 七代处理器装win7_为什么7代cpu装不了win7
  13. 智慧化工厂人员定位离我们有多远?苏州新导智能定位系统
  14. mysql left用法
  15. Python学习之re.compile与findall
  16. Android开发,XML文件注释方法
  17. 如何在Linux系统服务器中重命名目录
  18. call()和appy()的区别及常用场景
  19. 微信小程序之map地图
  20. 北京高校大学期末试题试卷题库

热门文章

  1. 透过个人ios经验,说下自己的一个实习项目
  2. javaHTML5“守护萌宠”网站设计与实现计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
  3. h5页面的头部返回箭头或者手势返回到指定的页面
  4. 【热血传奇】 添加npc
  5. java 基于jeecg-boot的公告管理——上移、下移、置顶
  6. RK3568平台开发系列讲解(驱动篇)class:设备的大管家
  7. JAVA IO必备知识
  8. Kotlin ExpandableListView可扩展二级列表,大厂安卓面试真题精选
  9. 微信支付相关,如何获取API证书
  10. 支付宝沙箱环境对接(当面付)