傲尘爱打代码 2022-04-07 21:12 采纳率: 50%
浏览 28
已结题

怎么把switch转换成数组解题?

问题遇到的现象和发生背景

问题描述:

   在平时日常生活中通常需要回答当月的某日期为星期几的问题,常常通过提供你当月某天是星期几,然后需要计算当月的某日期为星期几。提供当月日期和星期的数(用阿拉伯数表示,0Sunday1Monday2Tuesday3Wednesday4Thursday5Friday6Saturday),然后提供一个当月的日期号数,请计算该日期号数为星期几,使用英文单词输出星期几。

输入:

  标准输入,输入的第一行为计算用例数为整数n,接下来的n行,每行有3个由空格分开整数,其中第一个整数为当月的日期数,第二个整数为第一个整数表示的日期日的星期几,第三个整数是需要你回答当月该日期是星期几,如该行输入为:1 3  10,表示当月的1号为星期三,请问当月的10号为星期几。

输出:

 标准输出:每一个计算的结果使用一行输出,输出使用英文单词输出星期几。

输入样例:

2
1 3 10
10 0 5

输出样例:

Friday
Tuesday

问题相关代码,请勿粘贴截图

import java.util.Scanner;
public class weekquestion{
public static void main(String[] args) {
int i = 0;
int number;
Scanner reader = new Scanner(System.in);
int n = reader.nextInt();
for(i=0;i<n;i++)
{
int mouth = reader.nextInt();
int day = reader.nextInt();
int date = reader.nextInt();
number = Math.abs((day+28+(date-mouth))%7);
switch (number)
{
case 0 :System.out.println("Sunday");break;
case 1 :System.out.println("Monday");break;
case 2 :System.out.println("Tuesday");break;
case 3 :System.out.println("Wednesday");break;
case 4 :System.out.println("Thursday");break;
case 5 :System.out.println("Friday");break;
case 6 :System.out.println("Saturday");break;
}
}
}
}

  • 写回答

3条回答 默认 最新

  • 关注

    你用字符串数组存周一到周日,然后再通过number作为下标找到数组中的星期

    img

    import java.util.Scanner;
     public class weekquestion{
    public static void main(String[] args) {
    int i = 0;
    int number;
    String[] str = {"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
    Scanner reader = new Scanner(System.in);
    int n = reader.nextInt();
    for(i=0;i<n;i++)
    {
    int mouth = reader.nextInt();
    int day = reader.nextInt();
    int date = reader.nextInt();
    number = Math.abs((day+28+(date-mouth))%7);
    System.out.println(str[number]);
    }
    }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月15日
  • 已采纳回答 4月7日
  • 创建了问题 4月7日

悬赏问题

  • ¥15 Centos7 / PETGEM
  • ¥15 csmar数据进行spss描述性统计分析
  • ¥15 各位请问平行检验趋势图这样要怎么调整?说标准差差异太大了
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 wpf界面一直接收PLC给过来的信号,导致UI界面操作起来会卡顿
  • ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
  • ¥15 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗