题目:对一批编号为1-100全部开关朝上(开)的灯进行以下操作:
开关编号凡是1的倍数反方向拨一次开关;若该编号也是2的倍数反方向又拨一次开关;若该编号又是3的倍数反方向又拨一次开关……以此类推一直计算到100为止。
目的:请trace出经过反复开关操作后所有关闭的灯的开关编号。

public class Light {
public static void setBack(int[] temp, int i) {//注意这个传法
if (temp[i] == 0)
temp[i] = 1;
else if (temp[i] == 1)
temp[i] = 0;
}public static void main(String args[]) {
int[] light = new int[100];
for (int i = 0; i < 100; i++) {
light[i] = 0;
}
;for (int i = 0; i < 100; i++) {
for (int n = 2; n < 101; n++) {
if ((i + 1) % n == 0)
setBack(light, i);
}
}for (int i = 0; i < 100; i++) {
System.out.print(light[i] + " ");
}
;}
}