所以我在调试这段代码时遇到了麻烦,想请求你帮忙..
所以这是代码: import java.io。*;
公共类PrefEx2 { public static void main(String args [])抛出IOException {
int quiz, ave, sum=0;
BufferedReader inpt = new BufferedReader (new InputStreamReader(System.in));
// System.out.print("Section 1");
for (int sect=1; sect<4; sect++){
System.out.print("Section " + sect);
for (int x=1; x<4; x++){
System.out.println("\n Student " + x);
for (int y=1; y<4; y++){
System.out.print("Quiz " + y + ": ");
quiz=Integer.parseInt(inpt.readLine());
sum=sum+quiz;
}
ave=sum/3;
System.out.print("Average: " + ave);
System.out.println("");
}
}
System.out.println("");
}
}
我想在输出中显示:
第1节(最多3节)
-Student 1
- 测验1:xx
- 测验2:xx
- 测验3:xx
- 平均值:xx
-Student 2
- 测验1:xx
- 测验2:xx
- 测验3:xx
- 平均值:xx
- 学生3
- 测验1:xx
- 测验2:xx
- 测验3:xx
- 平均值:xx
============================
因此,此代码中的问题是平均自我总结 喜欢例如 学生1的平均分为94分 然后在接下来的平均值,它变成186而不是92 .. 我希望你能帮助我,我需要这个项目。
谢谢!
答案 0 :(得分:1)
问题是变量和。你必须在avg calc
之后重置它答案 1 :(得分:0)
在此行之前加上一个和=
for (int y=1; y<4; y++){
重置每个学生的价值
答案 2 :(得分:0)
你应该分配sum = 0;之前 for(int y = 1; y&lt; 4; y ++)