TestSwitch05.java.bak 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. import java.util.*;
  2. class TestSwitch05
  3. {
  4. public static void main(String[] args)
  5. {
  6. /*
  7. 从键盘分别输入年、月、日,判断这一天是当年的第几天
  8. 注:判断一年是否是闰年的标准:
  9. 1)可以被4整除,但不可被100整除
  10. 2)可以被400整除
  11. 例如:1900,2200等能被4整除,但同时能被100整除,但不能被400整除,不是闰年
  12. */
  13. Scanner sc = new Scanner(System.in);
  14. //数字
  15. System.out.println("输入年份");
  16. //调用方法
  17. int year = sc.nextInt();
  18. System.out.println("输入月份");
  19. //调用方法
  20. int month = sc.nextInt();
  21. System.out.println("输入天数");
  22. //调用方法
  23. int day = sc.nextInt();
  24. //求和思想
  25. int days = 0;
  26. if(year > 0){
  27. if(month >=1 && month <= 12){
  28. //天数判断
  29. switch (month){
  30. case 12:
  31. days += 30;
  32. case 11:
  33. days += 31;
  34. case 10:
  35. days += 30;
  36. case 9:
  37. days += 31;
  38. case 8:
  39. days += 31;
  40. case 7:
  41. days += 30;
  42. case 6:
  43. days += 31;
  44. case 5:
  45. days += 30;
  46. case 4:
  47. days += 31;
  48. case 3:
  49. days += 28;
  50. //判断闰年
  51. if( year % 4 == 0 && year %100 != 0 || year % 400 ==0 ){
  52. days++;
  53. }
  54. case 2:
  55. days += 31;
  56. case 1:
  57. days += day;
  58. }
  59. System.out.println("2023年的"+month+"和"+day+"是第:"+days);
  60. }
  61. }
  62. }
  63. }