C++元旦倒计时代码系列合集

目录

1.简单倒计时代码

2.元旦倒计时绘制

小科普:


 

 

1.简单倒计时代码

这是一个简单的程序示例,它可以帮助您计算元旦节到当前时间的倒计时:

#include <iostream>
#include <ctime>

int main() {
  // 获取当前时间
  time_t currentTime = time(nullptr);
  
  // 元旦节的时间(以秒为单位)
  time_t newYear = mktime(new struct tm {
    .tm_year = currentTime->tm_year + 1,
    .tm_mon = 0,
    .tm_mday = 1,
    .tm_hour = 0,
    .tm_min = 0,
    .tm_sec = 0
  });
  
  // 计算倒计时(以秒为单位)
  int countdown = difftime(newYear, currentTime);
  
  // 计算倒计时(以天、小时、分钟和秒为单位)
  int days = countdown / 86400;
  countdown -= days * 86400;
  int hours = countdown / 3600;
  countdown -= hours * 3600;
  int minutes = countdown / 60;
  countdown -= minutes * 60;
  int seconds = countdown;
  
  // 输出倒计时
  std::cout << "元旦节倒计时:" << days << "天 " << hours << "小时 " << minutes << "分钟 " << seconds << "秒" << std::endl;
  
  return 0;
}

在这个程序中,我们使用了 time 函数来获取当前时间,并使用 mktime 函数来创建一个表示下一年元旦节的时间结构体。然后使用 difftime 函数来计算两个时间之间的差(以秒为单位)。最后,我们使用一些简单的数学运算来将倒计时转换为天、小时、分钟和秒,并将结果输出到控制台。

2.元旦倒计时绘制

如果您想生成一个元旦倒计时图片,可以使用图像处理库(例如,OpenCV)来绘制文本和图形。

这是一个使用 OpenCV 绘制元旦倒计时图片的示例程序:

#include <opencv2/opencv.hpp>
#include <iostream>
#include <ctime>

int main() {
  // 获取当前时间
  time_t currentTime = time(nullptr);
  
  // 元旦节的时间(以秒为单位)
  time_t newYear = mktime(new struct tm {
    .tm_year = currentTime->tm_year + 1,
    .tm_mon = 0,
    .tm_mday = 1,
    .tm_hour = 0,
    .tm_min = 0,
    .tm_sec = 0
  });
  
  // 计算倒计时(以秒为单位)
  int countdown = difftime(newYear, currentTime);
  
  // 计算倒计时(以天、小时、分钟和秒为单位)
  int days = countdown / 86400;
  countdown -= days * 86400;
  int hours = countdown / 3600;
  countdown -= hours * 3600;
  int minutes = countdown / 60;
  countdown -= minutes * 60;
  int seconds = countdown;
  
  // 创建图像
  cv::Mat image(300, 300, CV_8UC3, cv::Scalar(255, 255, 255));
  
  // 创建字体
  cv::Mat font = cv::getStructuringElement(cv::MORPH_ELLIPSE, cv::Size(3, 3));
  cv::dilate(font, font, cv::Mat(), cv::Point(-1, -1));
  cv::Mat fontImage = cv::Mat::zeros(font.size(), CV_8UC1);
  fontImage.setTo(cv::Scalar::all(255));
  cv::subtract(fontImage, font, fontImage);
  
  // 绘制文本
  cv::putText(image, "元旦倒计时", cv::Point(10, 30), cv::FONT_HERSHEY_SIMPLEX, 1.0, cv::Scalar(0, 0, 0), 2, 8, false);
  cv::putText(

小科普:

在中国传统文化中,元旦并没有特别的意义,而是在西方文化的影响下被引入的。中国传统文化中有许多庆祝新年的传统,例如春节、端午节、中秋节等。不过,随着中国社会的发展和西方文化的影响加深,元旦也逐渐成为中国人民庆祝新年的一个重要节日。现在,中国元旦节期间,人们通常会举办各种活动,包括阅兵、游行、烟花、庆祝会等,来庆祝新的一年的开始。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

babyai997

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值