JAVA小程序,请高手帮我做个注释

来源:百度知道 编辑:UC知道 时间:2024/07/04 10:15:16
public class a1
{
public static void main(String args[])
{
int n =5;
int m =2;
int j,p,k;
int a[] = new int[n];
int b[] = new int[n];
for (int i = 0; i < n; i++)
{
a[i] = i + 1;
}
for (int i = n; i > 1; i--) //主要是这一段循环语句,本人没有理解
{
k = m % i;
for ( j = 0; j < (i - 1) && k < i; j++, k++)
{
b[j] = a[k];
}
for ( p = j, k = 0; p < i && k < (m % i - 1); p++, k++)
{
b[p] = a[k];
}
for (int r = 0; r < n; r++)
{
a[r] = b[r];
b[r] = 0;
}
}
for (int i= 0; i < n; i++)
{
if (a[i] != 0

public class a1 {
public static void main(String args[]) {
int n = 5;
int m = 2;
int j, p, k;
int a[] = new int[n];
int b[] = new int[n];
for (int i = 0; i < n; i++) {
a[i] = i + 1;
}
for (int i = n; i > 1; i--) //循环4次
{
k = m % i;//k的值依次为2,2,2,0
for (j = 0; j < (i - 1) && k < i; j++, k++) {
//循环至j<i-1且k<i,将a[k]的值交给b[j]。
//i=5时(k=2到4), b[0] = a[2], b[1] = a[3], b[2] = a[4]
//i=4时(k=2到3), b[0] = a[2], b[1] = a[3]
//i=3时(k=2), b[0] = a[2]
//i=2时(k=0到1,j=0) b[0] = a[0]
//类似一个阶梯状赋值。
b[j] = a[k];
}
for (p = j, k = 0; p < i && k < (m % i - 1); p++, k++) {
//循环至p < i且k < (m % i - 1),将a[k]的值交给b[p],注意循环开始时都将k初始为0。
//i=5时(k=0), b[3] = a[0]
//i=4时(k=0), b[2] = a[0]
//i=3时(k=0), b[1] = a[0]
//i=2时 无操作
//类