c++编程定义一时钟类Clock

定义一时钟类Clock,设计成员函数SetAlarm(inthour,intminute,intsecond)设置响铃时间;用run()成员函数模拟时钟运行,当运行到响铃... 定义一时钟类Clock,设计成员函数SetAlarm(int hour,int minute,int second)设置响铃时间;用run()成员函数模拟时钟运行,当运行到响铃时间时提示响铃。 如果做的好的还可以加分!!!! 展开
 我来答
youloveJ炱
2014-06-23 · 超过65用户采纳过TA的回答
知道答主
回答量:189
采纳率:33%
帮助的人:63.1万
展开全部
#include <iostream> using namespace std; //时间类 class Time{ private: int hour; int minute; int second; public: //设置时间 void set(int h,int m,int s){ hour = h; minute = m; second = s; } //时间走一秒,时分秒的变化情况 void next(){ if(second<59) second++; else if(minute<59){ second=0; minute++;} else if(hour<23){ minute=0; hour++;} else hour=0; } //得到时间 int get(){ return hour*10000+minute*100+second; } }; //时钟类 class Clock{ private: Time now; Time ring_time; public: //对表,设定初始时间 void adjust_now(int h,int m,int s){ now.set(h,m,s); cout<<"现在的时间是:"<<h<<"时"<<m<<"分"<<s<<"秒"<<endl; } //设定闹铃时间 void adjust_ring(int h,int m,int s){ ring_time.set(h,m,s); cout<<"闹铃时间是:"<<h<<"时"<<m<<"分"<<s<<"秒"<<endl; } //时间过一秒 void tick(){ long int old=time(0); while(time(0)==old) ; now.next(); } //显示当前时间 void showtime(){ cout<<now.get()<<endl; } //时钟开始走时,等到了闹铃时间,开始响 void run(){ do{ tick(); showtime(); if(now.get()>=ring_time.get()) cout<<'\a'; }while(1); } }; int main(){ Clock c; c.adjust_now(18,35,40); //起始时间 c.adjust_ring(18,35,45); //闹铃时间 c.run(); }
亮亮20yf椘
推荐于2017-09-25 · TA获得超过102个赞
知道答主
回答量:131
采纳率:0%
帮助的人:55.2万
展开全部
class clock { public: clock(); ~clock(); SetAlarm(int hour,int minute,int second); increamenthour(); increamentminute(); increamentsecond(); run(int hour,int minute,int second); private: int hr; int min; int sec; } void clock::SetAlarm(int hour,int minute,int second) { if(0<=hours&&hours<24) hr=hour; else hr=0; if(0<=hours&&hours<24) min=minute; else min=0; if(0<=hours&&hours<24) sec=second; else sec=0; } void clock::increamenthour() { hr++; if(hr>23) hr=0; } void clock::increamentminute() { min++; if(min>59) { min=0; increamenthour(); } } void clock::increamentsecond() { sec++; if(sec>59) { sec=0; increamtentminute(); } } void clock::run(int hour,int minute,int second) { increamenthour(); increamentminute(); increamentsecond(); if(hr==hour&&min==minute&&sec=second) cout<<"铃响"<<endl; } 刚开始上班,正好有时间,构造函数自己写一下,呵呵。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Nor_yourgodsy
推荐于2017-09-16 · TA获得超过1.8万个赞
知道大有可为答主
回答量:3659
采纳率:82%
帮助的人:290万
展开全部
#include <iostream>
using namespace std;
//时间类
class Time{
private:
int hour;
int minute;
int second;
public:
//设置时间
void set(int h,int m,int s){
hour = h;
minute = m;
second = s;
}
//时间走一秒,时分秒的变化情况
void next(){
if(second<59)
second++;
else if(minute<59){
second=0;
minute++;}
else if(hour<23){
minute=0;
hour++;}
else
hour=0;
}
//得到时间
int get(){
return hour*10000+minute*100+second;
}
};
//时钟类
class Clock{
private:
Time now;
Time ring_time;
public:
//对表,设定初始时间
void adjust_now(int h,int m,int s){
now.set(h,m,s);
cout<<"现在的时间是:"<<h<<"时"<<m<<"分"<<s<<"秒"<<endl;
}
//设定闹铃时间
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式