代码如下:
package cn.wuhan.unit7;
import java.util.*;
public class Tianshu2 {
public static void main(String[] args) {
int year,month,day;
int days=0;
int dayCount=0;
Scanner sc;
boolean isTrue=false;
do{
isTrue=false;
System.out.println("输入某年某月某日,判断这一天是这一年的第几天?");
System.out.println("请输入年: ");
sc = new Scanner(System.in);
year = sc.nextInt();
System.out.println("请输入月:");
sc = new Scanner(System.in);
month = sc.nextInt();
System.out.println("请输入日:");
sc = new Scanner(System.in);
day = sc.nextInt();
//数据输入错误
if(year<=0||month<=0||month>12||day<=0||day>31){
System.out.println("输入的数据有误,请重新输入!");
isTrue = true;
}
}while(isTrue);
for(int i=1;i<month;i++){
switch(i){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days=31;
break;
case 4:
case 6:
case 9:
case 11:
days=30;
break;
case 2:
if((year%400==0)||((year%4==0)&&(year%100!=0))){
days=29;
}else{
days=28;
}
break;
}
dayCount += days;
}
dayCount += day;
System.out.println(year+"年"+month+"月"+day+"日,是这一年的第"+dayCount+"天");
}
}
效果如下: