赛马网基本算法之--日期倒计时
来源:互联网 发布:好工长之家 知乎 编辑:程序博客网 时间:2024/04/29 09:36
题目描述
在经济、科技日益发达的今天,人们对时间的把握越来越严格,对于一个一定影响力的公司的高管来说,他可能要将自己的行程提前安排到下个月。对于普通人来说,他也可能将几天之后的安排已经提前做好。
请设计一个程序计算出今天距离未来的某一天还剩多少天。
假设今天是2015年10月18日。
输入
输入一个日期格式为yyyy-MM-dd,不考虑日期是否小于今天。
样例输入
2015-10-19
输出
输出一个数字表示今天(2015年10月18日)距离该日期还剩多少天。
样例输出
1
时间限制
C/C++语言:1000MS
其它语言:3000MS
内存限制
实现代码:C/C++语言:65536KB
其它语言:589824KB
*#include<iostream>#include<ctime>using namespace std;int main(){struct tm now = {0};now.tm_year = 2015-1900;now.tm_mon = 10-1;now.tm_mday = 18;time_t now_sec = mktime(&now);char input[100];gets(input);char *pch = strtok(input, "-");char * res[3];int i = 0;while (pch != NULL){res[i++] = pch;pch = strtok(NULL, "-");}struct tm input_t = {0};input_t.tm_year = atoi(res[0]) - 1900;input_t.tm_mon = atoi(res[1]) - 1;input_t.tm_mday = atoi(res[2]);time_t input_second = mktime(&input_t);cout << (input_second - now_sec) / 24 / 3600 << endl;}
主要思路是将起始时间的秒数算出来,然后再计算出输入的日期的秒数,最后将秒数转换为天数即为倒计时的天数。在上面的程序中使用了字符串分割的方法来
分割年、月、日。其还可以利用sscanf利用类似正则表达式来处理。其中关于时间的几个函数需要注意:
time_t是一个long型的数来表示秒数;
tm为时间结构体,其中包括了year,month,day等属性;
mktime是将一个表示时间的结构体tm转换为秒数(从1900年开始)time_t;
localtime()将time_t转换为一个指向tm的指针;
asctime()转换为可读的时间。
#include<iostream>#include<ctime>#include<cstdio>using namespace std;int main(){struct tm now = {0};now.tm_year = 2015-1900;now.tm_mon = 10-1;now.tm_mday = 18;time_t now_sec = mktime(&now);struct tm input_t = {0};int year, month, day;scanf("%d-%d-%d", &year, &month, &day);input_t.tm_year = year - 1900;input_t.tm_mon = month - 1;input_t.tm_mday = day;time_t input_second = mktime(&input_t);cout << (input_second - now_sec) / 24 / 3600 << endl;return 0;}
0 0
- 赛马网基本算法之--日期倒计时
- 赛马网基本算法之--将功赎过
- 赛马网基本算法之--翻转数组
- 赛马网基本算法之--路灯
- 赛马网基本算法之--上台阶
- 赛马网基本算法之--约德尔测试
- 赛马网基本算法之--分苹果
- 赛马网基本算法之--约会问题
- 赛马网基本算法之--公交车乘客
- 赛马网基本算法之--研究生考试
- 赛马网基本算法之---比大小
- 赛马网基本算法之--马路上的路灯
- 赛马网基本算法之一 (股神问题)
- 贪心算法之田忌赛马
- 日期倒计时
- 日期倒计时
- 日期倒计时
- 日期倒计时
- ExpandableListVivew
- SSD: Single Shot MultiBox Detector的安装配置和运行
- android图片涂鸦,具有设置画笔,撤销,缩放移动等功能(二)
- 语言 求单中链表倒数第k个节点
- 构建企业级数据仓库的五步法
- 赛马网基本算法之--日期倒计时
- PHP.4-DIV+CSS标准网页布局准备工作(下)
- toolbar字体大小修改
- 记录学习的点滴(Ubuntu防火墙命令)
- php const与define的区别
- Android Shape 资源文件
- PHP 读取 大文件 解决方法
- 将javaweb部署到SAE上,并且连接数据库
- 微信小程序报错