您的位置:首页 > 其它

华为OJ——计算日期到天数转换

2017-08-03 02:27 387 查看
题目描述

  根据输入的日期,计算是这一年的第几天。。

详细描述:

输入某年某月某日,判断这一天是这一年的第几天?。

输入描述:

输入三行,分别是年,月,日

输出描述:

成功:返回outDay输出计算后的第几天;

失败:返回-1

示例1

输入

  2012

  12

  31

输出

  366

实现代码:

package cn.c_shuang.test10;

import java.util.Scanner;

/**
* 计算日期到天数转换
* @author Cshuang
*
*/
public class Main {

public static void main(String[] args) {
Scanner in=new Scanner(System.in);
while(in.hasNext()){
int year=in.nextInt();
int month=in.nextInt();
int day=in.nextInt();
int[] arr={31,28,31,30,31,30,31,31,30,31,30,31};
if(isLeap(year)){
arr[1]=29;//实际是2月
}
int sum=0;
for (int i = 0; i < month-1; i++) {
sum+=arr[i];
}
sum+=day;
System.out.println(sum);
}
in.close();

}
//一般的,能被4整除的年份是闰年,不能被4整除的年份是平年
//如果是世纪年(也就是整百年),就只有能被400整除才是闰年,否则就是平年.
public static boolean isLeap(int year){
if(year%4==0&&year%100!=0||year%400==0){
return true;
}else{
return false;
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  华为