尝试使用三个Java数组拥有三列数据
大家好,我正在编写一个程序,使用数组和方法计算10名学生的分数。学生的分数如下所示。我遇到的问题是在3列中相邻显示名称平均值和等级。我用来打印数组的当前代码是这样打印的
The Average is
Average: 82.4
Average: 81.2
Average: 66.6
Average: 72.2
Average: 52.2
Average: 59.2
Average: 63.4
Average: 90.0
Average: 73.4
Average: 68.8
The grade is
Grade = B
Grade = B
Grade = C
Grade = C
Grade = D
Grade = D
Grade = D
Grade = A
Grade = C
Grade = C
BUILD SUCCESSFUL (total time: 0 seconds)
这里是代码与名称标记和平均我做了任何帮助是非常感谢
import java.util.Arrays;
public class Question2Assignment {
public static double [][] Marks;
public static char [] graded;
public static String [] Name;
public static double [] avg;
public static void main(String[] args) {
inMarks() ;
SNames();
System.out.println("The Average is");
for (double number : AverageMarks(Marks))
{
System.out.print("Average: " + number);
System.out.println("");
}
System.out.println("The grade is");
for (char grade : Grade(graded))
{
System.out.print("Grade = " + grade);
System.out.println("");
}
}
private static void inMarks()
{
Marks = new double [][] {{85,83,77,91,76},{80,90,95,93,48},{78,81,11,90,73},{92,83,30,69,87},{23,45,96,38,59},{60,85,45,39,67},{77,31,52,74,83},{93,94,89,77,97},{79,85,28,93,82},{85,72,49,75,63}};
}
private static void SNames()
{
Name = new String [] {"Jognson","Aniston","Cooper","Gupta","Blair","Clark","Kennedy","Bronson","Sunny","Smith"};
}
public static double[] AverageMarks(double[][] Marks)
{
double avg[] = new double [Marks.length];
for (int row = 0; row < Marks.length; row++){
int sum=0;
for (int col = 0; col < Marks[row].length; col++){
sum += Marks[row][col];
}
avg[row] = 1.0*sum / Marks[row].length; // calc average
}
return avg;
}
public static char [] Grade(char[] Graded)
{
char [] graded = new char [10];
int count = 0;
for (double number : AverageMarks(Marks))
{
if(number <50)
{
graded [count] = 'F';
count++;
}
else if (number <65)
{
graded [count]= 'D';
count++;
}
else if (number <75)
{
graded [count] = 'C';
count++;
}
else if (number <85)
{
graded [count] ='B';
count++;
}
else
{
graded [count]='A';
count++;
}
}//first for loop
return graded;
}
}//class end
# 1 楼答案
# 2 楼答案
以上给出的答案为您指出了正确的方向,但在这种情况下给出了错误的结果