学习目标:
目标:熟练运用Java所学知识
学习内容:
本文内容:使用java解决 计算日期到天数转换
题目描述
根据输入的日期,计算是这一年的第几天。
测试用例有多组,注意循环输入
输入描述:
输入多行,每行空格分割,分别是年,月,日
输出描述:
成功:返回outDay输出计算后的第几天;
失败:返回-1
解题思路
直接将每个月的天数存放在数组中,在判断一下输入的年份是否是闰年,是闰年则二月的天数加一,然后将输入的月份之前的每月天数相加再加上是当月第几日即可
实现代码
public class DateToDays {
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
int year=sc.nextInt();
int month=sc.nextInt();
int day=sc.nextInt();
int Day=outDay(year,month,day);
System.out.println(Day);
}
}
public static int outDay(int year,int month,int day){
int[] days={31,28,31,30,31,30,31,31,30,31,30,31};
if(year%100!=0&&year%4==0||year%400==0){
//闰年
days[1]=29;
}
int res=0;//存储天数
//统计天数
for(int i=0;i<month-1;i++){
res+=days[i];
}
res+=day;
return res;
}
}