我正在研究在2D数组中输入多项选择测试,并使用指南数组检查答案的代码,并告诉学生有多少问题是正确的还是错误的。我可以检查所有学生的答案,但是给出正确和不正确问题数量的语句会打印8次(二维数组的宽度),而不是一次。
我尝试使用嵌套的for循环中的值来检查参数的方式。
for (int n = 0; n < tests.length; n++) {
for (int m = 0; m < tests[0].length + 1; m++) {
if (m < tests[0].length) {
if (!(tests[0][m].equals(answers[m]))) {
incorrect++;
} else if (tests[0][m].equals(answers[m]))
correct++;
} else {
System.out.println(
"You got " + correct + " answers correct and " + incorrect + " answers wrong.");
correct = 0;
incorrect = 0;
}
}
}
我希望每个学生仅打印一次打印声明,而不是8次。
答案 0 :(得分:3)
您的所有tests[0][m]
都应该是tests[n][m]
,除非我在这里丢失了一些东西。否则,它会一遍又一遍地循环通过相同的测试