Java 如何计算数组中值的平均等级?
请帮帮我。我一直在不停地做这个,但我仍然不能让它按我想要的方式运行。我是编程新手。我不太擅长使用方法。我这里有一个我的工作样本,我的问题是如何得到平均成绩,如何在控制台上打印出来。当我运行此代码时,变量grade中的最后一个值是控制台上显示的唯一值。我还需要检查出勤情况……我该怎么做? 我期末考试需要这个密码 学生监控 导入java.util.*; 公共班级学生监控{Java 如何计算数组中值的平均等级?,java,Java,请帮帮我。我一直在不停地做这个,但我仍然不能让它按我想要的方式运行。我是编程新手。我不太擅长使用方法。我这里有一个我的工作样本,我的问题是如何得到平均成绩,如何在控制台上打印出来。当我运行此代码时,变量grade中的最后一个值是控制台上显示的唯一值。我还需要检查出勤情况……我该怎么做? 我期末考试需要这个密码 学生监控 导入java.util.*; 公共班级学生监控{ public static void main(String[] args) { Scanner in=new Scanner(
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
Date date=new Date();
int[] attend1={},attend2,attend3,grade={};
String line="-------------------------------------------------------------------";
String[] idNum1={},idNum2={},gender={}, name1={},name2={},name3={},name4={},address={},sub={};
扫描仪输入=新扫描仪(System.in);
int-check=0,num=0
System.out.println(line);
System.out.println("\t\t****STUDENT MONITORING****");
System.out.println(line);
System.out.println("\nGood day teacher, to start using this program input the following information first.\n");
System.out.println(line);
System.out.print("NAME OF SCHOOL: ");
String sName=in.nextLine();
System.out.print("ADDRESS OF SCHOOL: ");
String sAdd=in.nextLine();
System.out.print("SCHOOL IDENTIFICATION NUMBER: ");
String sId=in.nextLine();
System.out.println(line);
System.out.println("STUDENTS INFORMATION");
System.out.println("Enter the year and section of this class");
String yearSec=in.nextLine();
System.out.println("How many student information do you want to input? ");
int numberStudents=in.nextInt();
idNum1=new String[numberStudents];
name1=new String[numberStudents];
name2=new String[numberStudents];
name3=new String[numberStudents];
name4=new String[numberStudents];
attend1=new int[200];
attend2=new int[200];
attend3=new int[200];
address=new String[numberStudents];
grade=new int[100];
gender=new String[numberStudents];
idNum2=new String[numberStudents];
System.out.println("Enter the number of subjects you have: ");
int numSub=in.nextInt();
sub=new String[numSub];
in.nextLine();
for(int x=0;x<numSub;x++) {
System.out.print("Subjec #"+(x+1)+": ");
sub[x]=in.nextLine();
}
for(int x=0;x<numberStudents;x++) {
in.nextLine();
System.out.println(line);
System.out.println("Student #"+(x+1));
System.out.print("LAST NAME: ");
name1[x]=in.nextLine();
System.out.print("FIRST NAME: ");
name2[x]=in.nextLine();
System.out.print("MIDDLE INITIAL: ");
name3[x]=in.nextLine();
System.out.print("GENDER: ");
gender[x]=in.nextLine();
System.out.print("ADDRESS: ");
address[x]=in.nextLine();
System.out.print("ID NUMBER: ");
idNum1[x]=in.nextLine();
System.out.println(line);
System.out.println("Enter the grades here.");
System.out.println(line);
for (int a=0;a<numSub;a++) {
System.out.print(sub[a]+": ");
grade[a]=in.nextInt();
}
}
System.out.println("This is the list of the students info you've inputted.");
System.out.println("ID Number\t Name\t\t GENDER\t\t ADDRESS");
for(int x=0;x<numberStudents;x++) {
System.out.println(idNum1[x]+"\t\t"+name1[x]+" "+name2[x]+","+name3[x]+".\t\t"+gender[x]+"\t\t"+address[x]);
}
System.out.println("Subject\t\tGrades");
for(int x=0;x<numSub;x++) {
System.out.println(sub[x]+"\t\t"+grade[x]);
}
System.out.println(line);
System.out.println();
}
System.out.println(行);
System.out.println(“\t\t****学生监控****”);
系统输出打印项次(行);
System.out.println(“\n好老师,要开始使用此程序,请先输入以下信息。\n”);
系统输出打印项次(行);
系统输出打印(“学校名称:”);
字符串sName=in.nextLine();
系统输出打印(“学校地址:”);
字符串sAdd=in.nextLine();
系统输出打印(“学校标识号:”);
字符串sId=in.nextLine();
系统输出打印项次(行);
System.out.println(“学生信息”);
System.out.println(“输入该类的年份和部分”);
字符串yearSec=in.nextLine();
System.out.println(“您想输入多少学生信息?”);
int numberStudents=in.nextInt();
idNum1=新字符串[numberStudents];
name1=新字符串[numberStudents];
name2=新字符串[numberStudents];
name3=新字符串[numberStudents];
name4=新字符串[numberStudents];
attend1=新整数[200];
attend2=新整数[200];
attend3=新整数[200];
地址=新字符串[numberStudents];
等级=新整数[100];
性别=新字符串[数字学生];
idNum2=新字符串[numberStudents];
System.out.println(“输入您的主题数量:”);
int numSub=in.nextInt();
sub=新字符串[numSub];
in.nextLine();
对于(int x=0;x,以下是一个示例:
double[] values = { 2.2, 3.6, 6.3, 3.6, 2.8, 8.5, 8.3, 8.3, 1.2, 10, 2.2, 5.6 };
double sum = 0;
for (int i = 0; i < values.length; i++)
sum += values[i];
System.out.println("Average: " + sum / values.length);
double[]值={2.2,3.6,6.3,3.6,2.8,8.5,8.3,8.3,1.2,10,2.2,5.6};
双和=0;
对于(int i=0;i
这回答了你最初的问题
但是,如果在填充阵列时也遇到问题,则可以执行以下操作:
int MAX = 3;
double[] values = new double[MAX];
Scanner scanner = new Scanner(System.in);
for (int i = 0; i < MAX; i++) {
System.out.print("Type the grade: ");
values[i] = scanner.nextDouble();
}
scanner.close();
int MAX=3;
double[]值=新的double[MAX];
扫描仪=新的扫描仪(System.in);
对于(int i=0;i
公共静态void main(字符串[]args){
System.out.println(“输入您想要的学生人数:”);
扫描仪=新的扫描仪(System.in);
int numOfStudents=scanner.nextInt();
双[]年级=新双[学生];
双倍合计=0;
双电流等级=0;
对于(int i=0;它的并行数组设计不好。请帮我做一个更好的。如果你已经开始OOP,你应该把它设计成一个学生对象数组,而不是为每个属性创建一个单独的数组。我仍然在程序中…这是我学习java的第一个学期。OOP将从下学期开始。请帮助我e改进我的代码。我只能使用过程性的…我不能向我的老师演示OOP。我使用了一个数组变量来存储不同学生的成绩…这不是正确的做法吗?当然。你可以使用变量数组。这没有问题。我只是举个例子。但是你完全可以声明一个空数组,然后添加values.我仍然不知道该怎么做…我非常渴望在期末考试中使用这段代码…还有6天的时间…你在填充数组方面有问题吗?如果有,请按照@Brunaldo所说的使用scanner。我在组合结构方面有问题。我如何使用数组变量做到这一点?我在我的代码上尝试了这一点,但问题是我必须计算迟交多个学生的成绩,当我运行程序时,由于scanner.close();,程序停止,当我取出它时,第一个学生的成绩与下一个学生的成绩相加。我该怎么办?
public static void main(String[] args) {
System.out.println("Enter the number of students you want: ");
Scanner scanner = new Scanner(System.in);
int numOfStudents = scanner.nextInt();
double[] grades = new double[numOfStudents];
double total = 0;
double currentGrade = 0;
for(int i=0; i<grades.length; i++) {
System.out.println("Grade achieved: ");
currentGrade = scanner.nextDouble();
grades[i] = currentGrade;
total += currentGrade;
}
scanner.close();
System.out.println(Arrays.toString(grades));
System.out.println("Average grade " + (total / numOfStudents));
}