C++实现闹钟程序的方法
本文所述为C++实现闹钟程序的方法,代码结构相对简单,注释也较为完善。现分享给大家供大家参考。
具体功能代码如下:
#include<iostream>
#include<string>
#include<ctime>
usingnamespacestd;
//时间类
classTime{
private:
inthour;
intminute;
intsecond;
public:
//设置时间
voidset(inth,intm,ints){
hour=h;
minute=m;
second=s;
}
//时间走一秒,时分秒的变化情况
voidnext(){
if(second<59)
second++;
elseif(minute<59){
second=0;
minute++;}
elseif(hour<23){
minute=0;
hour++;}
else
hour=0;
}
//得到时间
intget(){
returnhour*10000+minute*100+second;
}
};
//时钟类
classClock{
private:
Timenow;
Timering_time;
public:
//对表,设定初始时间
voidadjust_now(inth,intm,ints){
now.set(h,m,s);
cout<<"现在的时间是:"<<h<<"时"<<m<<"分"<<s<<"秒"<<endl;
}
//设定闹铃时间
voidadjust_ring(inth,intm,ints){
ring_time.set(h,m,s);
cout<<"闹铃时间是:"<<h<<"时"<<m<<"分"<<s<<"秒"<<endl;
}
//时间过一秒
voidtick(){
longintold=time(0);
while(time(0)==old)
;
now.next();
}
//显示当前时间
voidshowtime(){
cout<<now.get()<<endl;
}
//时钟开始走时,等到了闹铃时间,开始响
voidrun(){
do{
tick();
showtime();
if(now.get()>=ring_time.get())
cout<<'\a';
}while(1);
}
};
intmain(){
Clockc;
c.adjust_now(18,35,40);//起始时间
c.adjust_ring(18,35,45);//闹铃时间
c.run();
}
感兴趣的读者可以测试运行一下该实例代码,功能不足之处可以根据情况加以改进和完善。希望该实例能够对大家学习C++起到一定的帮助作用。