Java教程

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

本文主要是介绍输入某年某月某日,判断这一天是这一年的第几天?JAVA基础题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
import java.util.Scanner;

public class Test20 {
    public static void main(String[] args) {
        System.out.println("请输入日期,年月日按空格隔开");
        Scanner sc = new Scanner(System.in);
        int year = sc.nextInt();
        int month = sc.nextInt();
        int day = sc.nextInt();
        int towMonth = 28;
            if ((year % 400 == 0) | (year % 4 == 0 && year % 100 != 0)) {
                towMonth = 29;//闰年多一天
            }
            int totalDay = 0;
            int[] months = {31, towMonth, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
        if (month>12||day>months[month-1]){
            //判断月份不能大于12,日不能大于当前月份最大的天数,否则不合法
            System.out.println("日期不合法,请重新输入!");
        }else {
            if (month == 1) {
                //如果月份等于1,那么直接输出是第day天
                System.out.println("天数为" + year + "年的第" + day + "天");
            } else {
                //非1月情况下,调用数组从1月加到月份-1月,最后在将总和与day相加就是总天数
                for (int i = 0; i < month - 1; i++) {
                    totalDay += months[i];
                }
                totalDay += day;
                System.out.println("天数为" + year + "年的第" + totalDay + "天");
            }
        }
    }
}

正确输入
请添加图片描述
错误输入
请添加图片描述

这篇关于输入某年某月某日,判断这一天是这一年的第几天?JAVA基础题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!