Java基础50道经典练习题(14)——求日期
【程序 14 求日期】
题目:输入某年某月某日,判断这一天是这一年的第几天?
程序分析:以 3 月 5 日为例,应该先把前两个月的加起来,然后再加上 5 天即本年的第几天,特殊情况,
闰年且输入月份大于 3 时需考虑多加一天。
源码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | package com.homework.test; import java.util.*; /* 【程序 14 求日期】 题目:输入某年某月某日,判断这一天是这一年的第几天? 程序分析:以 3 月 5 日为例,应该先把前两个月的加起来,然后再加上 5 天即本年的第几天,特殊情况, 闰年且输入月份大于 3 时需考虑多加一天。 */ public class Test14 { public static void main(String [] args){ Scanner scan = new Scanner(System.in).useDelimiter( "\\D" ); //匹配非数字 System.out.println( "请输入日期(年-月-日):" ); int year = scan.nextInt(); int month = scan.nextInt(); int date = scan.nextInt(); scan.close(); System.out.println( "该天是本年中的第" +fun(year,month,date)+ "天" ); } public static int fun( int Y, int M, int D){ int n = 0 ; int [] month_day = new int []{ 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 }; if ((Y % 400 == 0 ) || ((Y % 4 == 0 ) && (Y % 100 != 0 ))) month_day[ 1 ] = 29 ; for ( int i= 0 ; i<M; i++){ n += month_day[i]; } return n+D; } } |
今日事,今日毕。
posted on 2020-06-05 17:25 lifelicanpeng 阅读(432) 评论(0) 编辑 收藏 举报
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步