SwitchCaseTest2.java.bak 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /*
  2. 编写程序:从键盘上输入2019年的“month”和“day”,要求通过程序输出
  3. 输入的日期为2019年的第几天。(使用switch-case)
  4. */
  5. import java.util.Scanner;
  6. class SwitchCaseTest2{
  7. public static void main(String[] args){
  8. Scanner scan = new Scanner(System.in);
  9. System.out.println("请输入2019年的month:");
  10. int month = scan.nextInt();
  11. System.out.println("请输入2019年的day:");
  12. int day = scan.nextInt();
  13. //方法一:冗余
  14. //定义一个变量来保存总天数
  15. /*int sumDays = 0;
  16. if(month == 1){
  17. sumDays = day;
  18. }else if(month = 2){
  19. sumDays = 31 + day;
  20. }else if(month == 3){
  21. sumDays = 31 + 28 + day;
  22. }else if(month == 4){
  23. sumDays = 31 + 28 + 31 + day;
  24. ……
  25. else{//month == 12
  26. //sumDays = …… +day;
  27. }*/
  28. //方法二:冗余
  29. /*switch(month){
  30. case 1:
  31. sumDays = day;
  32. break;
  33. case 2:
  34. sumDays = 31 + day;
  35. break;
  36. ……
  37. }*/
  38. //方法三:
  39. switch(month){
  40. case 12:
  41. sumDays += 30;
  42. case 11:
  43. sumDays += 31;
  44. case 10:
  45. sumDays += 30;
  46. case 9:
  47. sumDays += 31;
  48. case 8:
  49. sumDays += 31;
  50. case 7:
  51. sumDays += 30;
  52. case 6:
  53. sumDays += 31;
  54. case 5:
  55. sumDays += 30;
  56. case 4:
  57. sumDays += 31;
  58. case 3:
  59. sumDays += 28;
  60. case 2:
  61. sumDays += 31;
  62. case 1:
  63. sumDays += day;
  64. }
  65. System.out.println("2019年"+month+"月"+day+"日是当年的第"+sumDays+"天");
  66. }
  67. }