1. 程式人生 > >用java實現輸入某年某月某日,判斷這一天是這一年的第幾天?

用java實現輸入某年某月某日,判斷這一天是這一年的第幾天?

package com.test;

import java.util.Scanner;

public class asgasaf {
    /**
     * 輸入某年某月某日,判斷這一天是這一年的第幾天?
     * 
     */
    public static void main(String[] args) {
        int year;
        int mouth;
        int day=0;
        int days;
        //累計天數
        int d=0;
        int e = 0;
        Scanner scanner = new
Scanner(System.in); do { System.out.println("輸入年:"); year = scanner.nextInt(); System.out.println("輸入月:"); mouth = scanner.nextInt(); System.out.println("輸入日:"); days = scanner.nextInt(); if (mouth < 0 || mouth > 12
|| days < 0 || days > 31) { System.out.println("input error!"); e = 1; } } while (e == 1); for (int i = 1; i <mouth; i++) { switch (i) { case 1: case 3: case 5: case 7: case
8: case 10: case 12: { day = 31; break; } case 4: case 6: case 9: case 11: { day = 30; break; } case 2: { /** * 閏年:①:非整百年數除以4,無餘為閏,有餘為平;②整百年數除以400,無餘為閏有餘平 * 二月:平年28天、閏年29天 */ if ((year % 100 !=0 &&year % 4 == 0) || (year % 100 == 0 && year%400==0)) { day = 29; } else { day = 28; } } default: break; } d+=day; } System.out.println("這是"+year+"年的"+(d+days)+"天"); } }