📄 array1d_3.java
字号:
//array1D_3.java
public class array1D_3{
public static void main(String args[]){
final int N = 13; //总人数N
final int S = 3; //从第S个人开始报数
final int M = 5; //报数M的人出圈
int p[] = new int[N];
int i, s, w, j;
s = S;
for(i = 1;i<= N;i++)
p[i-1] = i; //对每个人进行编号
for(i = N;i>=2;i--){ //总人数为N,依次减1
s = (s+M-1)%i; //计算下一个报数M的人的位置
if(s==0) s = i; //最后一个出圈人的位置存人变量s中
w=p[s-1]; //将出圈人的编号保存到变量w中
for(j = s;j<=i-1;j++)
p[j-1] = p[j]; //从s位置开始,数组的内容依次前移
p[j-1] = w; //将w存入到数组p中
}
System.out.println("\n出圈顺序为: ");
for(i=p.length-1;i>=0;i--) System.out.print(" "+p[i]);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -