누군가가이 프로그램에 도움을 줄만큼 친절하다면 스캐너를 사용하여 여러 학생의 이름과 성적을 받아 학생과 점수라는 2 개의 배열에 넣습니다. 그러면 다음과 같이 인쇄됩니다.
맥스. 등급 = 98 (로렌)
나의. 등급 = 50 (Joe)
평균 등급 = 83.9
/* Chris Brocato
* 10-27-15
* This program will read the students names and scores using a Scanner and use two arrays to
* show the grade and name of the highest and lowest scoring student as well as the average grade.*/
import java.util.*;
public class StudentCenter {
public static void main(String[] args) {
Scanner console = new Scanner(System.in);
System.out.print("Please enter the number of students: ");
int students = console.nextInt();
String[] name = new String[students];
int[] scores = new int[students];
int min = 0; int max = 0; int sum = 0;
for (int i = 0; i < name.length; i++) {
System.out.print("Please enter student's name: ");
name[i] = console.next();
System.out.print("Now enter their score: ");
scores[i] = console.nextInt();
if (i == 0) {
min = students;
max = students;
}else {
if (students < min) min = students;
if (students > max) max = students;
}sum += students;
}
System.out.println("Min. Grade = " + min + name );
System.out.println("Max. Grade = " + max + name);
System.out.println("Average Grade = " + sum);
double avg = (double) sum / (double) students;
System.out.println("Avg = " + avg);
console.close();
}
}
당신은 설정하는 min
, max
,와 sum
의 값 students
학생들이 아니라 자신의 점수의 수입니다. 아마로 설정해야합니다 scores[i]
.
if (i == 0) {
min = scores[i];
max = scores[i];
}else {
if (students < min) min = scores[i];
if (students > max) max = scores[i];
}
sum += scores[i];
또한 나중에 이름을 참조 할 수 있도록 최소 및 최대 점수에 대한 색인 을 저장합니다 .
min = scores[i];
minIndex = i;
...
System.out.println("Min. Grade = " + min + name[minIndex] );
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다