输入某年某月某日,判断这一天是这一年的第几天(java程序)

public class test14{
	public static void main(String[] args){
		//int year=2018,month=9,day=30;
		result(2018,9,30);//可以设置成键盘或其他方式输入。
	}
	private static void result(int year,int month,int day){
		int data=30*(month-1)+day;   //先按标准30天相加。
		//13578 10  12月   31天  
		if(month>=11){          //       11.10   前面13578   10月都要加一天
			data=data+6-2;      //       加之前所有31号的6天,减去二月多加的两天(平年二月28天)
		}else if(month>=9){     //       9.15   前面13578    各加一天 
			data=data+5-2;
		}else if(month>=8){
			data=data+4-2;
		}else if(month>=6){
			data=data+3-2;
		}else if(month>=4){
			data=data+2-2;
		}else if(month==3){	   //三月减二月多算的2天。
			data=data+1-2;
		}else if(month==2){    //二月几号直接由day决定,不用减2天。
			data=data+1;       //1月31天,加1天。
		}
		//判断当前是否是闰年(闰年能被4整除但不能被100整除)
			if(year%4==0&&year%100!=0){
				//闰年二月加一天
				data++;
				System.out.print(year+"年"+month+"月"+day+"日是"+year+"年"+"第"+data+"天");
			}else{
				System.out.print(year+"年"+month+"月"+day+"日是"+year+"年"+"第"+data+"天");
			}
	};
}

猜你喜欢

转载自blog.csdn.net/weixin_43311389/article/details/82914062