现在时间C++

题目:
导入现在时间
年 月 日
时 分 秒
代码
在这里插入图片描述
在这里插入图片描述

#include <iostream>
#include <unistd.h>

using namespace std;

int GetYear(int year);
int GetMonth(int year, int month);
void Run(int year, int &Jan);
string Day(int day);
string Use(int y, int m, int d);

int main()
{
    cout << "\033[2J\033[1000A";
    int year, month, day, hour, min, sec, last;
    while (true)
    {   
        time_t now = time(0);
        tm *ltm = localtime(&now);
        year = 1900 + ltm->tm_year;
        last = ltm->tm_year - 100;
        month = 1 + ltm->tm_mon;
        day = ltm->tm_mday;
        hour = ltm->tm_hour;
        min = ltm->tm_min;
        sec = ltm->tm_sec;

        cout << year << "年"
             << month << "月"
             << day << "日 "
             << "星期" << Use(last, month, day) << endl << "\t\b\b\b";
        if (hour < 10)
        {
            cout << 0;
        }
        cout << hour << ":";
        if (min < 10)
        {
            cout << 0;
        }
        cout << min << ":";
        if (sec < 10)
        {
            cout << 0;
        }
        cout << sec << endl;
        sleep(1);
        cout << "\033[2J\033[1000A";
    }
    return 0;
}

int GetYear(int year)
{
    year = (year / 4 + year) % 7;
    return year;
}

int GetMonth(int year, int month)
{
    if (month == 10)
    {
        month = 6;
    }
    else if (month == 3
           ||month == 11)
    {
        month = 2;
    }
    else if (month == 4
           ||month == 7)
    {
        month = 5;
    }
    else if (month == 8)
    {
        month = 1;
    }
    else if (month == 6)
    {
        month = 3;
    }
    else if (month == 5)
    {
        month = 0;
    }
    else if (month == 9
           ||month == 12)
    {
        month = 4;
    }
    else if (month == 1)
    {
        month = 6;
        Run(year, month);
    }
    else
    {
        month = 2;
        Run(year, month);
    }
    return month;
}

void Run(int year, int &Jan)
{
    if (year % 4 == 0)
    {
        Jan--;
    }
}

string Day(int day)
{
    string yad;
    switch (day)
    {
        case 1:
        yad = "一";
        break;
        
        case 2:
        yad = "二";
        break;
        
        case 3:
        yad = "三";
        break;
        
        case 4:
        yad = "四";
        break;
        
        case 5:
        yad = "五";
        break;
        
        case 6:
        yad = "六";
        break;
        
        case 7:
        yad = "日";
        break;
    }
    return yad;
}

string Use(int y, int m, int d)
{
    int day = GetYear(y) + GetMonth(y, m) + d;
    while (day > 7)
    {
        day -= 7;
    }
    return Day(day);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值