unantu 用C语言写一个程序,制作一个控制台时钟,每隔一秒输出当前的系统时间。并且提供用户输出频率,输出样式的选择
时间: 2024-03-24 22:40:21 浏览: 109
好的,以下是一个简单的 C 语言程序,可以实现控制台时钟的基本功能,支持用户自定义输出频率和样式:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int interval, style;
printf("请输入输出频率(秒):");
scanf("%d", &interval);
printf("请选择输出样式(1-24小时制,2-12小时制):");
scanf("%d", &style);
while (1) {
time_t rawtime;
struct tm * timeinfo;
time(&rawtime);
timeinfo = localtime(&rawtime);
if (style == 1) {
printf("%02d:%02d:%02d\r", timeinfo->tm_hour, timeinfo->tm_min, timeinfo->tm_sec);
} else {
int hour = timeinfo->tm_hour;
if (hour > 12) hour -= 12;
printf("%02d:%02d:%02d %s\r", hour, timeinfo->tm_min, timeinfo->tm_sec, hour < 12 ? "AM" : "PM");
}
fflush(stdout);
sleep(interval);
}
return 0;
}
```
程序运行后会要求用户输入输出频率和样式,然后进入一个无限循环,每隔指定的时间输出当前系统时间,并根据用户选择的样式进行格式化输出,直到用户手动停止程序。其中 `sleep()` 函数用于让程序休眠指定的时间,以达到定时输出的效果。
阅读全文