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

KLQ 2020-05-26 10:09:16 java常见问答 5747

下面给大家带来了一个非常经典的java编程题目,来看看题目内容和解题思路以及代码实现方式吧。

一、题目

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

二、思路

以3月5日作为例子

应该先将前面两个月的加起来,之后,再加上5天也就是本年的第几天,特殊情况,闰年且输入月份大于3的时候,需要考虑多加一天。

三、代码实现

import java.util.Scanner;
public class Prog14
{
    public static void main(String[] args)
    {
        Scanner scan = new Scanner(System.in)
            .useDelimiter("\D"); //匹配非数字
        System.out.print("请输入当前日期(年-月-日):");
        int year = scan.nextInt();
        int month = scan.nextInt();
        int date = scan.nextInt();
        scan.close();
        System.out.println("今天是" + year + "年的第" + analysis(year, month, date) + "天");
    }
    //判断天数
    private static int analysis(int year, int month, int date)
    {
        int n = 0;
        int[] month_date = new int[]
        {
            0
            , 31
            , 28
            , 31
            , 30
            , 31
            , 30
            , 31
            , 31
            , 30
            , 31
            , 30
        };
        if ((year % 400) == 0 || ((year % 4) == 0) && ((year % 100) != 0))
            month_date[2] = 29;
        for (int i = 0; i < month; i++)
            n += month_date[i];
        return n + date;
    }
}

更多java编程经典例题,可以继续通过本站的java实例栏目了解哦,希望以上的例题可以对大家有所帮助。

推荐阅读:

java编程经典例题,一个整数加上100后是完全平方数

Java中while语句怎么用?利用while语句统计字符的个数

java打印水仙花数,用java写水仙花数代码