蓝桥杯真题:天数

题目:1949.10.01到2022.01.01一共经过了多少天

import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        //在此输入您的代码...
        int j=0;
        int a=0;
        for(int i=1950;i<2022;i++){
            if((i%4==0&&i%100!=0)||i%400==0){
                j++;
            }
            a=31+30+31+j*366+(72-j)*365;

        }System.out.print(a);
        scan.close();
    }
}

注意闰年的计算方法:

  1. 如果年份能被4整除,那么它有可能是闰年。
  2. 但如果该年份能被100整除,那么它不是闰年,除非它同时能被400整除

有更简单的方法,直接在if else语句后面分别加上366 365,就少用一个变量

public class Main{
    public static void main(String[] args)
    {
        
        int sumDay = 92;
        for(int i=1950;i<2022;i++)
        {
            if(i%400==0||(i%4==0&&i%100!=0))
            {
                sumDay+=366;
            }else {
                sumDay+=365;
            }
        }
        System.out.println(sumDay);
    }
}

你可能感兴趣的:(蓝桥杯,java)