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

时间:2023-02-23 14:00:26
public static void main(String[] args) {
      
        int year;
        int month;
        int day;
        int sum=0;
        int flag=0;//flag用来标识是闰年还是平年
        Scanner reader =new Scanner(System.in);
        int months[]={31,28,31,30,31,30,31,31,30,31,30,31};
        System.out.println("请输入年份:");
        year=reader.nextInt();
        if(year%100==0) {
            if(year%400==0) {
                flag=1;
            }
        }
        else if(year%4==0) {
            flag=1;
        }
        if(flag==0) {
            months[1]=28;
        //    System.out.println(year+"是平年");    
        }
            
        else {
            months[1]=29;
        //    System.out.println(year+"是闰年");
        }
        System.out.println("请输入月份:");    
        month=reader.nextInt();
        System.out.println("请输入几号:");
        day=reader.nextInt();
        if(month==1) {
            System.out.println(year+" 年的第 "+day+"天");
        }
        for (int i=0;i<month-1;i++) {
            sum=sum+months[i];
        }
        System.out.println("这是"+year+"年的第"+(sum+day)+"天");
        

    }