大一 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) 能正确处理边界日期-每个月的最后一天 展开
输入: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) 能正确处理边界日期-每个月的最后一天 展开
1个回答
展开全部
光给你分析算法吧
首先,判断月份是否是2月,应该注意是否是2月是个很重要的事情,牵扯一个闰年的问题,因此,先判断年份是否为闰年,然后就知道2月是哪种情况。
然后在判断是否是4、6、9、11月,因为就这4个月份是30天的,排除了这些,剩下的就一定是31天的了。
当然,我们看到,还有一个是否是越界的运算。因此,如果不是越界的,那么就直接日期+1就可以了。如果是越界,那么月份+1,日期归1。比如,2月的闰年问题判断完了,就在后面的以此判断中写条件IF(日期<28)日期+1;ELSE{ 月份+1; 日期=1;},其他2种月份依此类推…………
首先,判断月份是否是2月,应该注意是否是2月是个很重要的事情,牵扯一个闰年的问题,因此,先判断年份是否为闰年,然后就知道2月是哪种情况。
然后在判断是否是4、6、9、11月,因为就这4个月份是30天的,排除了这些,剩下的就一定是31天的了。
当然,我们看到,还有一个是否是越界的运算。因此,如果不是越界的,那么就直接日期+1就可以了。如果是越界,那么月份+1,日期归1。比如,2月的闰年问题判断完了,就在后面的以此判断中写条件IF(日期<28)日期+1;ELSE{ 月份+1; 日期=1;},其他2种月份依此类推…………
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询