【日常练习】switch练习
输入几月几号,输出这是今年的第几天。
Scanner sc = new Scanner(System.in);
System.out.print("请输入月份");
int month = sc.nextInt();
System.out.println("请输入day");
int day = sc.nextInt();
//定义一个变量来保存总天数
int sumDay = 0;
switch (month){
case 12:
sumDay += 30;
case 11:
sumDay += 31;
case 10:
sumDay += 30;
case 9:
sumDay += 31;
case 8:
sumDay += 31;
case 7:
sumDay += 30;
case 6:
sumDay += 31;
case 5:
sumDay += 30;
case 4:
sumDay += 31;
case 3:
sumDay += 28;
case 2:
sumDay += 31;
case 1:
sumDay += day;
break;
default:
System.out.println("输入有误");
}
System.out.println("这是2019年的第" + sumDay+ "天");
倒着写的,而且中间没有break,想想为什么。
输入年月日,判断是年的第几天
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入月份");
int month = sc.nextInt();
System.out.println("请输入day");
int day = sc.nextInt();
System.out.println("请输入year");
int year = sc.nextInt();
//定义一个变量来保存总天数
int sumDay = 0;
switch (month){
case 12:
sumDay += 30;
case 11:
sumDay += 31;
case 10:
sumDay += 30;
case 9:
sumDay += 31;
case 8:
sumDay += 31;
case 7:
sumDay += 30;
case 6:
sumDay += 31;
case 5:
sumDay += 30;
case 4:
sumDay += 31;
case 3:
//sumDay += 28;
if ((year %4 == 0 && year % 100 != 0) || year % 400 == 0){
sumDay += 29;
}
else
sumDay += 28;
case 2:
sumDay += 31;
case 1:
sumDay += day;
break;
default:
System.out.println("输入有误");
}
System.out.println("这是" + year + "年的第" + sumDay+ "天");
}
````