傲尘爱打代码 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日

悬赏问题

  • ¥500 亚马逊 COOKIE我如何才能实现 登录一个亚马逊账户 下发新 COOKIE ..我使用下发新COOKIE 导入ADS 指纹浏览器登录,我把账户密码 修改过后,原来下发新COOKIE 不会失效的方式
  • ¥20 玩游戏gpu和cpu利用率特别低,玩游戏卡顿
  • ¥25 oracle中的正则匹配
  • ¥15 关于#vscode#的问题:把软件卸载不会再出现蓝屏
  • ¥15 vimplus出现的错误
  • ¥15 usb无线网卡转typec口
  • ¥30 怎么使用AVL fire ESE软件自带的优化模式来优化设计Soot和NOx?
  • ¥15 Ubuntu20.04.4.LTS系统如何下载安装VirtualBox虚拟机?
  • ¥15 如何用QDomDocument读取内容为空格的xml数据
  • ¥15 请阅读下面代码,帮我修改下代码