狂人分析比特币趋势:来用代码算一算在这个世界上活了多少天吧

  前言:活了那么久,想不想知道自己已经在这个世界上活了多少天了?本文就以小程序的形式解决这个问题,告诫大家人生苦短,请务必惜时如金。

  为了提升小程序的用户体验,不让用户做过多的输入,我们引入C语言中的这个头文件,让程序自动读取本机时间,用户只需要输入自己的生日,即可获悉自己的存活天数。

  首先介绍一下的部分用法:

  与日期和时间相关的数据结构

  

  由此可知,tm是一个结构体,里面的一系列成员即是与本机时间相关的参数。需要注意的是,tm_year并不是实际的公元纪年,tm_year+1900才是实际的公元纪年,tm_mon也不是实际的月份,tm_mon+1才是实际的月份。例如,今天是2018年8月13日,tm_year的实际值是118,tm_mon的实际值是7。

  下面我们尝试打印一下本机时间,里面的部分代码是获取本机时间的固定形式。

  

  下面进入核心算法部分:

  整个小程序虽然只有一行输入和一行输入,里面设计的内容却复杂的很。需要涉及闰年的问题,(year%4==0&&year%100!=0||year%400==0)为真的即为闰年,闰年的2月有29天。

  上代码:

  

  

  

  为了体现整个思路的流畅性,我几乎将所有的代码都放到了主函数中,请大家见谅。

  由上述代码可知,我将天数的计算分成了三部分,一部分是前向天数,一部分是中间天数,一部分是后向天数。所谓的前向天数是指出生日期当年剩余的天数,例如出生日期为1999年6月18日,则前项天数为自1999年6月19日0时起至1999年12月31日24时止的总天数;后向天数是指本机日期当年已经经过的天数;例如本机时间为2018年8月13日,则后向天数为自2018年1月1日0时起至2018年8月13日24时止的总天数。而中间天数是指间隔年的所有天数,举个例子,1998年3月2日和2000年6月18日,间隔年就是1999年这一整年;若是1998年3月2日和1999年6月18日,则没有间隔年,只有前向天数和后向天数。间隔年若为闰年则天数加上366,间隔年若为正常年份则天数加上365。此外,在前向天数和后向天数的计算中,也要注意考虑闰年和正常年份,以及2月这个特殊的月份。

  最后为大家展示一下实验结果:

  

  人生不过三万天,你有多少的时间虚度了,又有多少的时间用来敲了代码,又有多少的时间陪了家人和朋友。希望各位程序猿/媛们可以拿出更多的时间做更有意义的事。共勉。

  更多专栏文章:http://www.qukuaiwang.com.cn/zhuanlan

  声明:本文由入驻区块网专栏作者撰写,观点仅代表作者本人,绝不代表区块网赞同其观点或证实其描述。

文章内容系本站作者个人观点,不代表本站对其观点赞同或支持,文章的版权归该作者所有。如需转载,请注明文章来源。本文地址:http://www.cis.net.cn/kejikuaixun/43531.html
留言与评论(共有 条评论)
验证码:

最新文章

来用代码算一算在这个世界上活了多少天吧

科技快讯
前言:活了那么久,想不想知道自己已经在这个世界上活了多少天了?本文就以小程序的形式解决这个问题,告诫大家人生苦短,请务必惜时如金。为了提升小程序的用户体验,不让用户做过多的输入,我们引入C语言中的这个头文件,让程序自动读取本机时间,用户只需要输入自己的生日,即可获悉自己的存活天数。首先介绍一下的部分用法:与日期和时间相关

零知识证明 - Semaphore源代码导读

科技快讯
Semaphore是一个用零知识证明(zk-SNARK)技术的开源项目。Semaphore实现的是基于零知识证明的身份和信号。1.整体框架Semaphore整个项目,由三部分组成:nodejs模块(客户端/服务器端以及前端页面),snark模块(zk-SNAR

区块链与智能制造培训(区块链在智能制造方面的应用)

科技快讯
会上,行业专家进行了区块链、智能制造的相关介绍、案例和应用展望,分享行业经验,共享创新发展成果。邮电大学博士、通信行业市场研究与分析专家高峰做了题为“发展现状和趋势”的专题报告。据介绍,当前,区块链技术已经涉及服务、、社会管理、教育、通信等领域。在实际应用上,区块链技术可以进行税收监管与征信管理,如交易数据与发票

比特币现金BCC开发商提出了新的地址格式!

科技快讯
本周,领先的比特币ABC开发者AmaurySéchet建议将Bech32地址格式添加到BitcoinCash(BCC)网络。目前,BCC社区一直在讨论修改BCC地址格式,同时准备修订协议的紧急难度调整(EDA)。BCC社区和开发者建议更改协议的地址格式10月14日,AmaurySéchet提议为比特币现金网络实施新的地址格式。改变BCC地址格式的主题已经争

零交易费的点对点艺术市场《PeerArt》

科技快讯
区块链技术可以允许供应链中的所有参与者在没有中间人的情况下进行交互和价值的交易。我们能够以真正的点对点和去中心化的方式汇款,进行交易和使用软件等。这是具有革命性意义的。在Origin开源协议上建立的市场平台可以允许买家和卖家直接进行交易,没有中间人抽取很高的交易费。很快的,所有各式各样的共享经济

PlusToken超百亿资金去向追踪,币圈第一资金盘已波及300万人

科技快讯
近期,被称为“币圈第一资金盘”的Plustoken钱包资金盘事件引发了大量关注,关于Plustoken是个什么“玩意儿”,想必大家已经了解了很多,类似的文章在网上也有很多。首先笔者想说的是,这里面存在着一个误区,其实从本质上来说,Plustoken

黄震之(黄震传)

科技快讯
在可预见的未来世界中,即将成为我们生活与职业的一种方式。大家好,我是黄震,很高兴与大家在个人发展学会相遇!2008年,一篇标题为《,一种点对点的电子现金系统》的学术论文悄然发表,并没有引起多大的反响。2018年1月9日,一位著名投资基金创始人在一个500人的大群里,发布了一条让大家不要外传的消息,称区块链的革命已经到来,这是一场

到2027年,每个公司都将使用区块链

科技快讯
十年前,比特币的创造者中本聪(SatoshiNakamoto)用一篇长达八页的研究论文描述如何通过比特币使得货币去中心化,悄无声息地革新了像银行一样的信托提供机构。当时,没有多少人明白这八页文件内在蕴藏的潜力。在这八页文件里,中本先生不只是解释了我们如何能够

首届中国区块链媒体社会责任论坛在京隆重举行

科技快讯
活动由中国经济新闻联播网主持人韩旭(左)和斯思(右)联袂主持中国经济新闻联播网总裁、总编辑黄凤荣代表论坛主办方致欢迎词中华全国新闻工作者协会书记处书记潘岗致辞中国经济传媒协会会长赵健致辞《经济日报》社副总编辑丁士做主旨发言《科技日报》社总编辑刘亚东做主旨发言北师大新闻传播学院执行院长喻国明教授做主旨发言火星

继比特币之后又一强劲的数字货币时代的到来

科技快讯
随着区块链技术的不断普及以及数字货币的市值攀升,以比特币为首的诸多数字货币成为普通民众的追捧对象。再加上世界政治经济的变化,数字货币的积极作用在不断凸显,成为继黄金之外的又一避险资产。但是数字货币作为法律边缘的固定资产,由于其的虚拟性和数字化