对指定日期计算出N天后的日期问题
指定日期计算出N天后的日期问题
问题描述:先输入起始日期,再输入任意天数n,求n天后的日期。
源代码一(参考http://zhidao.baidu.com/linkurl=0BxF0QvTywzuRkLUFj6ulUQKYqp97CjUOZBV1UUmXoCkS9HNyOT2axHkcOsRLi-xlB_JE6KvdglSD23S35EUXK)
#include<stdio.h>
<span style="font-family:SimHei;font-size:14px;"><strong>int main()
{int year,month,day;int leapyear=0;int daytime=0;int sum;static int month_date[12]={31,28,31,30,31,30,31,31,30,31,30,31};printf("请输入日期:");scanf("%d-%d-%d",&year,&month,&day);printf("请输入天数:");scanf("%d",&daytime);sum=daytime+day;do{if(month==2){month_date[month-1]+=leapyear;}if(sum>month_date[month-1]){sum-=month_date[month-1];month++;if(month==13){year++;if(year%400==0||(year%100!=0&&year%4==0)){leapyear=1;}else{leapyear=0;}month=1;}}} while(sum>month_date[month-1]);day=sum;printf("\n第%d天后是%d-%d-%d",daytime,year,month,day);return 0;
}</strong></span><span style="font-family: arial, 'courier new', courier, 宋体, monospace; font-size: 14px;">
</span>
<span style="font-family:SimHei;font-size:14px;"><strong>
</strong></span>
源代码二(自己写的)
#include<stdio.h> int year,month,day,days,years; int a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31}; int ru(int year) { if(year%400==0||year%4==0&&year%100!=0) return 1; else return 0; } void rest(int days) { int i; for(i=1;i<=12;i++) { if(days-a[i]>0) days=days-a[i]; else { month=i; day=days; break; } } if(i-1==12) { year=year+1; if(!ru(year)) days++; rest(days); } year+=years; } int main() { int i; while(scanf("%d%d%d%d",&year,&month,&day,&days)==4) { days=days-(a[month]-day); if(!ru(year)&&month<=2) days=days+1; for(i=month+1;i<=12;i++) { if(days>a[i]) days=days-a[i]; else break; } if(i-1==12) { printf("%d\n",days); year++; years=0; while(days>=366) { days=days-366; years++; } for(i=1;i<=years;i++) { if(!ru(year+i)) days++; } rest(days); } else { month=i; day=days; } printf("%d-%d-%d\n",year,month,day); } return 0; }
对指定日期计算出N天后的日期问题相关推荐
- js日期计算,根据当前日期计算n个月后的日期
js计算n个月后的日期,并匹配月底,处理闰年,闰月 工作中遇到日期计算的需求,需要根据给定的日期计算出n个月后的日期,开始感觉挺简单一需求,因为现成的moment.js就有日期加月份计算的功能,但需求 ...
- java中,根据指定日期显示出前n天的日期
大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂 今天分享的是:在java中,根据指定日期显示出前n天的日期 效果如下: 大家注意观察上面的时间,我传入的时间是:2022年5月9日21:28:03, ...
- Shell 获取指定日期 N 天/月/年前(后)的日期
0 前 言 我们有时候在写批处理 Shell 脚本时,可能需要获取指定日期前(后) N 天/月/年的日期,这里的 N 可以是 1 天/月/年.2 天/月/年.3 天/月/年等等.方法其实很简单,这里做 ...
- js 根据公历日期 算出农历_根据公历日期计算农历年生肖及公历转换农历的方法...
本帖最后由 wshcw 于 2011-12-6 23:23 编辑 有部分E友都知道,农历格式"[$-130000]e-m-d"转换出来的结果有好大一部分有误,那有没有其它转换办法呢 ...
- ORACLE通过两个日期计算出刚出生小孩年龄,几月几天表示
[需求]出生后按照日历计算的历法年龄.年龄满1周岁的,以实足年龄的相应整数填写:年龄不足1周岁的,按照实足年龄的月龄填写,以分数形式表示:分数的整数部分代表实足月龄,分数部分分母为30,分子为不足1个 ...
- java实现剩余年假计算_通过参加工作日期计算出年假
Alter Function F_GetYearHoliday ( @JoinWorkDate datetime--参加工作时间 ) Returns int /* 计算年假 */ As Begin D ...
- 算出当前系统后某个月的日期_Python3.7知其然知其所以然-第十八章 日期函数
时光不可追,往事不可回.以往创建的数据,如若没有日期做标识,不堪回首.几乎任何一个产品都会用到日期,如登录日期.创建日期.修改日期等.正因如此,编程语言中,几乎都有内置日期函数. 18.1 当前日期 ...
- c++ 输入一个日期,计算出该日期是这一年中的第几天(switch语句)
c++ 日期计算 系统提示用户输入一个日期(年月日),随后根据用户提供的日期,利用switch语句,计算出该日期是这一年中的第几天.(注意闰年的判断,当日期在2月以后,天数应加一) (大一写的代码,算 ...
- 标 题:[转帖]SQL Server日期计算(收藏)
分 类:数据库相关 关键字 :日期 相 关:作者:未知 来源:xpilot 的 Blog 引 用:[0]http://goaler.xicp.net/TrackBack.asp ...
最新文章
- 论文免费开源:NB-IoT智慧路灯监控系统
- Elasticsearch之深入了解Search的运行机制
- ubuntu 无法进入startx_Ubuntu无法进入图形化界面(报错/dev/sda1:clean的解决)
- 用Autofac替换.net core 内置容器
- oracle pid查看,查看佔用aix oracle pid
- 世界人工智能发展究竟到了什么水平 ?
- 微型计算机技术及应用 习题答案,微型计算机技术及应用习题答案.doc
- JQ 全选后获取选中的值_JQ完全学习版本
- oracle 匿名段,这段匿名块看着没什么问题啊
- excel 2007 vba与宏完全剖析_Excel怎么保护自己的劳动成果?强制用户启用宏,再加上这一步...
- 2013年新年礼物---CrossFPC 终于出来了
- Eclipse配置svn
- 调查显示:数据中心行业女性获得报酬比男性多
- 7. 开启 mysql remote access
- 我的WCF之旅(5):面向服务架构(SOA)和面向对象编程(OOP)的结合——如何实现Service Contract的重载(Overloading)...
- mac电脑谷歌浏览器全屏显示选项卡
- Excel VLOOKUP实用教程之 08 VLOOKUP如果实现区分大小写的查找?(教程含数据excel)
- YOLOv5、v7改进之三十七:结合CVPR2022新作ConvNeXt网络
- R 语言 用黎曼和求近似 积分
- 曾我爱的人《亲爱的,别跨过那条江》:关于爱你,我准备用一生