大一 C语言程序设计。。。。(简单点的,,刚学)

输入三个正整数,分别代表一个日期的年、月、日,计算并在屏幕上显示输入日期后一天的年、月、日。例如:输入:2007228输出:2007311)检查年月日的合法性:如月份在[... 输入三个正整数,分别代表一个日期的年、月、日,计算并在屏幕上显示输入日期后一天的年、月、日。例如:
输入:2007 2 28
输出:2007 3 1

1)检查年月日的合法性:如月份在[1, 12]范围内取值,每个月份的日取值范围为:
1, 3, 5, 7, 8, 10, 12: [1, 31]
4, 6, 9, 11: [1, 30]
2: 闰年:[1, 29],不是闰年:[1, 28]
2) 能正确处理边界日期-每个月的最后一天
展开
 我来答
忍城暗影忍者
2010-11-01 · 超过65用户采纳过TA的回答
知道小有建树答主
回答量:203
采纳率:0%
帮助的人:183万
展开全部
光给你分析算法吧

首先,判断月份是否是2月,应该注意是否是2月是个很重要的事情,牵扯一个闰年的问题,因此,先判断年份是否为闰年,然后就知道2月是哪种情况。

然后在判断是否是4、6、9、11月,因为就这4个月份是30天的,排除了这些,剩下的就一定是31天的了。

当然,我们看到,还有一个是否是越界的运算。因此,如果不是越界的,那么就直接日期+1就可以了。如果是越界,那么月份+1,日期归1。比如,2月的闰年问题判断完了,就在后面的以此判断中写条件IF(日期<28)日期+1;ELSE{ 月份+1; 日期=1;},其他2种月份依此类推…………
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式