C++实验2-1
来源:互联网 发布:mac磁盘清理软件排名 编辑:程序博客网 时间:2024/05/18 03:08
一、问题及代码
- /*
- * 文件名称: 1.cpp
- * 作 者: 彭宏锐
- * 完成日期: 2016 年 4 月 4 日
- * 版 本 号: v1.0
- * 对任务及求解方法的描述部分:
- * 输入描述: 无
- * 问题描述: 阅读、运行程序后,按要求增加类的功能
- * 问题分析: 略
- * 算法设计: 略
#include <iostream>using namespace std;class Time{public:void set_time( ); void show_time( );void add_a_sec() //增加1秒钟{sec=sec+1;if(sec==60)minute=minute+1;if(minute==60)hour=hour+1;if(hour==24)hour=0;}void add_a_minute()//增加1分钟{minute=minute+1;if(minute==60)hour=hour+1;if(hour==24)hour=0;}void add_an_hour()//增加1小时{hour=hour+1;if(hour==24)hour=0;}voidadd_seconds(int a); //增加n秒钟void add_minutes(int b) ;//增加n分钟voidadd_hours(int c) ;//增加n小时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;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;}void Time::add_seconds(int a){ int k,l; k=a/60;l=a%60;sec=sec+l;minute=minute+k;if(sec>=60)minute=minute+1;if(minute>=60)hour=hour+1;if(hour>=24)hour=0;}void Time::add_minutes(int b){int d,q; d=b/60;q=b%60;minute=minute+q;hour=hour+d;if(minute>=60)hour=hour+1;if(hour>=24)hour=hour-24;}void Time::add_hours(int c){int v; v=c%24;hour=hour+v;if(hour>=24)hour=hour-24;}int main( ){Time t1; t1.set_time( ); t1.show_time( );t1.add_a_sec();t1.show_time( );t1.add_a_minute();t1.show_time( );t1.add_an_hour();t1.show_time( );t1.add_seconds(98);t1.show_time( );t1.add_minutes(97) ;t1.show_time( );t1.add_hours(34) ;t1.show_time();return 0;}二、运行结果
三、心得体会
操作不够熟练,较多地方不会,应加强练习。
四、知识点总结
使用时间要合理,注意提示的几点。
0 0
- C程序设计实验2
- C+实验2
- C程序设计实验1
- c 实验总结(2)
- C++实验2 C链表
- c++(复习)上机实验报告2
- 【哈工大C作业实验】:13-1作业题
- c++-实验6--项目1-数组操作
- c语言结构体实验记录1
- 实验:C++实验2—1
- 实验:C++实验2-项目1
- 网络编程-实验2-C与C通信
- C/C++_log2000_2017春季算法实验2_1
- C/C++_log2000_2017春季算法实验2_2
- C/C++_log2000_2017春季算法实验2_3
- C/C++_log2000_2017春季算法实验1_1
- C/C++_log2000_2017春季算法实验1_2
- C/C++_log2000_2017春季算法实验1_3
- LeetCode *** 263. Ugly Number
- Activity有四种加载模式:standard(默认), singleTop, singleTask和 singleInstance
- nyoj 48
- LeetCode 238. Product of Array Except Self
- 实现将view拖动到制定位置
- C++实验2-1
- Job Applications
- LeetCode Remove Nth Node From End of List
- Logback的安装、jar引入和简单标签用法
- Java新特性
- 一位夜深人静后码农的心里独白
- 关于ARC的介绍和ARC与MRC混编解决
- 单例模式分析
- 中控服务器accesstoken