注意:这是在不使用数组的情况下完成的。
RDMP音乐播放器将存储5首歌曲,它们的名称将永远是“A”,“B”,“C”,“D”和“E”。RDMP有3个按钮,用户可以按下这些按钮来重新排列播放列表并播放歌曲。
最初,RDMP播放列表是“A, B, C, D, E”。3个控制按钮做以下工作:
•按钮1:将播放列表的第一首歌曲移动到播放列表的末尾。例如:“A, B, C, D, E”会变成“B, C, D, E, A”。
•按钮2:将播放列表的最后一首歌移动到播放列表的开始。例如,“A, B, C, D, E”会变成“E, A, B, C, D”。
•按钮3:交换播放列表的前两首歌。例如,“A, B, C, D, E”会变成“B, A, C, D, E”。1.
你需要编写一个程序来模拟一个可以按下5次按钮的RD音乐播放器。
输入格式:
输入1到3之间的5个数字,代表要采取的行动。
输出格式:
输出播放列表的正确顺序。
歌曲名称中间用逗号作分隔,最后一首歌名称之后没有逗号。
输入样例:
3
3
1
2
1
输出样例:
B,C,D,E,A
方法-1 字符数组
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
char[] a= new char[] {'A','B','C','D','E'};
int i;
int j;
for(i=0;i<5;i++)
{
int n = scanner.nextInt();
if(n==1)
{
char t = a[0];
for(j=0;j<=3;j++)
{
a[j]=a[j+1];
}
a[4]=t;
}
if(n==2)
{
char q = a[4];
for(j=4;j>=1;j--)
{
a[j]=a[j-1];
}
a[0]=q;
}
if(n==3)
{
char e = a[0];
a[0]=a[1];
a[1]=e;
}
}
for(i=0;i<=4;i++)
{
if(i>=0&i<=3)
System.out.print(a[i]+",");
else
System.out.println(a[i]);
}
}
}
方法-2 分支+循环
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
char a='A',b='B',c='C',d='D',e='E';
int i;
for(i=0;i<5;i++)
{
int n = scanner.nextInt();
if(n==1)
{
char t1=a,t2=b,t3=c,t4=d,t5=e;
a=t2;
b=t3;
c=t4;
d=t5;
e=t1;
}
if(n==2)
{
char t1=a,t2=b,t3=c,t4=d,t5=e;
a=t5;
b=t1;
c=t2;
d=t3;
e=t4;
}
if(n==3)
{
char t=a;
a=b;
b=t;
}
}
System.out.print(a+","+b+","+c+","+d+","+e);
}
}