c语言编写多个闹钟代码
时间: 2023-08-12 09:59:41 浏览: 113
以下是一个使用C语言编写的简单多个闹钟代码的示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
typedef struct {
int hour;
int minute;
int second;
} Time;
typedef struct {
Time alarmTime;
int isActive;
} Alarm;
int main() {
int numAlarms;
printf("请输入闹钟数量:");
scanf("%d", &numAlarms);
Alarm *alarms = (Alarm*)malloc(numAlarms * sizeof(Alarm));
for (int i = 0; i < numAlarms; i++) {
printf("请输入第 %d 个闹钟的小时:", i + 1);
scanf("%d", &alarms[i].alarmTime.hour);
printf("请输入第 %d 个闹钟的分钟:", i + 1);
scanf("%d", &alarms[i].alarmTime.minute);
printf("请输入第 %d 个闹钟的秒钟:", i + 1);
scanf("%d", &alarms[i].alarmTime.second);
alarms[i].isActive = 0; // 默认情况下,闹钟是未激活状态
}
while (1) {
time_t currentTime = time(NULL);
struct tm *localTime = localtime(¤tTime);
for (int i = 0; i < numAlarms; i++) {
if (localTime->tm_hour == alarms[i].alarmTime.hour &&
localTime->tm_min == alarms[i].alarmTime.minute &&
localTime->tm_sec == alarms[i].alarmTime.second &&
!alarms[i].isActive) {
printf("第 %d 个闹钟响了!\n", i + 1);
alarms[i].isActive = 1;
}
}
// 休眠1秒钟
sleep(1);
}
free(alarms);
return 0;
}
```
以上代码允许用户输入闹钟的数量和每个闹钟的小时、分钟和秒钟。程序将在每个闹钟设定的时间点触发闹钟,并输出相应的提示信息。请注意,该代码仅作为示例,可能需要根据实际需求进行修改和完善。