listing04.c

来自「稀疏矩阵、链表、图、队列、二叉树、多叉树、排序、遗传算法等的实现」· C语言 代码 · 共 39 行

C
39
字号
#include <stdio.h>
#include <time.h>

int main(void)
{
    time_t timeval;
    struct tm tmval;
    char inbuff[30];

    for (;;) {
        printf("\nEnter a date and time formatted as YYYY/MM/DD HH:MM:SS\n");
        printf("or q to quit\n");
        fflush(stdout);
        if (fgets(inbuff, sizeof inbuff, stdin) == NULL)
            break;
        if (inbuff[0] == 'q' && inbuff[1] == '\n')
            break;

        if (sscanf(inbuff, "%d/%d/%d %d:%d:%d",
                   &tmval.tm_year, &tmval.tm_mon, &tmval.tm_mday,
                   &tmval.tm_hour, &tmval.tm_min, &tmval.tm_sec) != 6) {
            printf("Invalid date format\n");
            continue;
        }
        tmval.tm_year -= 1900;
        tmval.tm_mon--;
        tmval.tm_isdst = -1;

        if ((timeval = mktime(&tmval)) == (time_t)-1) {
            printf("time_t cannot represent that date and time\n");
            continue;
        }

        printf("The date and time you entered is %s", asctime(&tmval));
    }

    return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?