123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- /*
- 从键盘分别输入年、月、日,判断这一天是当年的第几天
- 判断一年是否是闰年的标准:
- (1)、可以被4整除,但是不能被100整除
- 或
- (2)、可以被400整除
- 说明:
- 1、凡是可以使用switch-case的结构,都可以转换为if-else,反之不成立。
- 2、当我们写分支结构时,当发现既可以使用switch-case(同时,switch中
- 表达式的取值情况不太多),又可以使用if-else时,优先选择使用
- switch-case。原因:switch-case执行效率稍高。
- */
- import java.util.Scanner;
- class SwitchCaseExer{
- public static void main(String[] args){
- Scanner scan = new Scanner(System.in);
- System.out.println("请输入年份:");
- int year = scan.nextInt();
- System.out.println("请输入月份:");
- int month = scan.nextInt();
- System.out.println("请输入日期:");
- int day = scan.nextInt();
- //定义一个变量来保存总天数
- int sumDays = 0;
- switch(month){
- case 12:
- sumDays += 30;
- case 11:
- sumDays += 31;
- case 10:
- sumDays += 30;
- case 9:
- sumDays += 31;
- case 8:
- sumDays += 31;
- case 7:
- sumDays += 30;
- case 6:
- sumDays += 31;
- case 5:
- sumDays += 30;
- case 4:
- sumDays += 31;
- case 3:
- //sumDays += 28;
- //判断year是否是闰年
- if(year%4 == 0 && year%100 !=0 || year%400 ==0){
- sumDays += 29;
- }else{
- sumDays += 28;
- }
- case 2:
- sumDays += 31;
- case 1:
- sumDays += day;
- }
- System.out.println("2019年"+month+"月"+day+"日是当年的第"+sumDays+"天");
-
- }
- }
|