#include<iostream> #include<time.h> #include<Windows.h> #include<iomanip> using namespace std; class Clock { public: Clock() { struct tm tp; //tm结构指针 time_t now; //声明time_t类型变量 time(&now); //获取系统日期和时间 localtime_s(&tp, &now); //获取当地日期和时间 _hour = tp.tm_hour; _min = tp.tm_min; _sec = tp.tm_sec; } void run() { while (1) { tick(); display(); } } void tick() { Sleep(1000); if (++_sec == 60) { _sec = 0; if (++_min == 60) { _min = 0; if (++_hour == 24) { _hour = 0; } } } } void display() { system("cls"); printf("当前的时间为:%02d:%02d:%02d\n", _hour, _min, _sec); } private: int _hour; int _min; int _sec; }; int main() { Clock c; c.run(); },将上述代码增加闹钟的功能
时间: 2024-04-07 07:33:29 浏览: 73
#include <iostream> #include<iomanip> using namespace std;九九乘法表
要为上述代码增加闹钟功能,可以添加一个闹钟时间的成员变量和相关的设置闹钟和检查闹钟的函数。以下是修改后的代码:
```cpp
#include<iostream>
#include<time.h>
#include<Windows.h>
#include<iomanip>
using namespace std;
class Clock
{
public:
Clock()
{
struct tm tp; //tm结构指针
time_t now; //声明time_t类型变量
time(&now); //获取系统日期和时间
localtime_s(&tp, &now); //获取当地日期和时间
_hour = tp.tm_hour;
_min = tp.tm_min;
_sec = tp.tm_sec;
_alarmHour = 0;
_alarmMin = 0;
}
void run()
{
while (1)
{
tick();
display();
checkAlarm();
}
}
void setAlarm(int hour, int min)
{
_alarmHour = hour;
_alarmMin = min;
cout << "闹钟已设置为:" << setw(2) << setfill('0') << hour << ":" << setw(2) << setfill('0') << min << endl;
}
void checkAlarm()
{
if (_hour == _alarmHour && _min == _alarmMin)
{
cout << "闹钟响了!" << endl;
// 这里可以添加闹钟响铃的操作,比如播放音乐或弹出对话框
}
}
private:
int _hour;
int _min;
int _sec;
int _alarmHour;
int _alarmMin;
void tick()
{
Sleep(1000);
if (++_sec == 60)
{
_sec = 0;
if (++_min == 60)
{
_min = 0;
if (++_hour == 24)
{
_hour = 0;
}
}
}
}
void display()
{
system("cls");
printf("当前的时间为:%02d:%02d:%02d\n", _hour, _min, _sec);
}
};
int main()
{
Clock c;
c.run();
return 0;
}
```
在修改后的代码中,新增了_alarmHour和_alarmMin两个成员变量,用于存储闹钟的小时和分钟。setAlarm函数用于设置闹钟时间,并在控制台输出设置的闹钟时间。checkAlarm函数用于检查当前时间是否与闹钟时间相同,如果相同则输出闹钟响了的提示。
你可以通过调用setAlarm函数来设置闹钟时间,当闹钟时间到达时,程序会输出相应的提示信息。
阅读全文