C++第二次实验
来源:互联网 发布:s7200梯形图编程实例 编辑:程序博客网 时间:2024/06/05 22:52
/* *文件名称:Ex1-3.cpp *作者:邓利超 *完成日期:2016年3月30日 *对任务及求解方法的描述部分: *输入描述:无 *问题描述:1.根据要求增加类的功能 *程序输出:按要求写出程序 *问题分析:略 *算法分析:略 */ #include <iostream>using namespace std;class Time{public: void set_time( ); void show_time( ); void add_secend_minute_hour(); void add_a_secend() { int q,w,e; q=secend+1; if(q<=59) q=q; else if(q=60) { q=0; w=minute+1; if(w<60) w=w; else if(w=60) { w=0; e=1+hour; { if(e<24) e=e; else if(e>=24) { e=0; } } } } cout<<"增加一秒后的时间为:"<<e<<":"<<w<<":"<<q<<endl; } void add_a_minute() { int r,t,y; r=minute+1; if(r<=59) r=r; else if(r=60) { r=0; t=hour+1; if(t<24) t=t; else if(t>=24) { t=0; } y=secend; } cout<<"增加一分后的时间为:"<<t<<":"<<r<<":"<<y<<endl; } void add_a_hour() { int sd,df,fg; sd=hour+1; if(sd<=23) sd=sd; else if(sd=24) { sd=0; } df=minute; fg=secend; cout<<"增加一小时后的时间为:"<<sd<<":"<<df<<":"<<fg<<endl; } void add_secend(int); void add_minute(int); void add_hour(int);private: bool is_time(int, int, int); //这个成员函数设置为私有的,是合适的,请品味 int hour; int minute; int secend;};void Time::set_time( ){ char c1,c2; cout<<"请输入时间(格式hh:mm:ss)"<<endl; while(1) { cin>>hour>>c1>>minute>>c2>>secend; if(c1!=':'||c2!=':') cout<<"格式不正确,请重新输入"<<endl; else if (!is_time(hour,minute,secend)) cout<<"时间非法,请重新输入"<<endl; else break; }}void Time::show_time( ){ cout<<hour<<":"<<minute<<":"<<secend<<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_secend(int s){ int n; secend=secend+s; if(secend>=60) { n=secend/60; secend=secend%60; Time::add_minute(n); }}void Time::add_minute(int m){ int n; minute=minute+m; if(minute>=60) { n=minute/60; minute=minute%60; Time::add_hour(n); }}void Time::add_hour(int h){ int n; hour=hour+h; if(hour>=24) { hour=hour%24; } cout<<"改变后的时间为:"<<hour<<":"<<minute<<":"<<secend<<endl;}int main( ){ Time t1; t1.set_time( ); cout<<"现在的时间为:"; t1.show_time( ); int x; do { cout<<"请选择执行程序"<<endl; cout<<"1.时分秒各增加一个单位"<<endl; cout<<"2.时分秒各增加任意个单位"<<endl; cout<<"输入任意非1和2的数退出程序"<<endl; cin>>x; if(x==1) { t1.add_a_secend(); t1.add_a_minute(); t1.add_a_hour(); } else if(x==2) { int s,m,h; cout<<"请输入增加时间数:"<<endl; cout<<"小时:"; cin>>h; cout<<"分钟:"; cin>>m; cout<<"秒:"; cin>>s; t1.add_secend(s); t1.add_minute(m); t1.add_hour(h); } } while((x!=1)||(x!=2)); return 0;}
0 0
- c++--补第二次实验
- C++STL 第二次实验
- 第二次C程序设计实验报告
- C语言第二次上级指导实验报告
- c程序语言设计第二次上机实验报告
- 第二次实验
- 第二次实验
- 第二次实验
- 第二次实验
- 第二次实验
- 第二次实验
- 第二次实验
- 第二次实验
- 第二次实验 实验报告
- C程序设计课程-2012电子信息 第二次上机实验
- 计算机图形学第二次实验E2-1-C语言
- 软件工程(C编码实践篇) 第二次作业实验报告
- C-第二次
- 缓冲区溢出攻击
- 能够与服务器连接交互的拥有界面的客户端-------------聊天窗口(实现群聊)
- RoundCornerTextview2
- SQL语句中的查询操作
- Python常用的字符串处理函数
- C++第二次实验
- CF 627A. XOR Equation 位运算
- 1005 买书金钱分配问题
- 面向服务的程序封装Save方法的错误
- Linux Shell 学习笔记2:Shell变量
- add Two Numbers
- JavaSE学习笔记(2016.4.1)
- 大话设计模式—组合模式
- hdu 3397 线段树双标记