Java 기초 배열 - 연습문제(4)
728x90
기본 환경
JDK : 1.8.0_261 버전 JRE : 1.8.0_261 버전 JAVA VERSION : 8 업데이트 261 Eclipse IDE VERSION : 2020-06버전 |
시나리오
학생수를 입력 받은 후 학생수와 과목수를 가지고 이차원 배열을 선언하고 학생별로
각 과목별 점수와 총점, 평균을 출력하는 프로그램을 만드시오. (과목은 수학,영어,국어가 있다.)
다음과 같은 결과가 나와야 합니다.
정답
package ex06array;
import java.util.Scanner;
public class QuSungJuk {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.printf("학생수를 입력하세요 : ");
int studentNum = scan.nextInt();
int[][] studentGrade = new int[studentNum][3];
for(int i = 0; i < studentGrade.length; i++) {
System.out.printf("[%d번째 학생의 점수 입력]", i+1);
System.out.println();
System.out.printf("국어점수 입력?");
studentGrade[i][0] = scan.nextInt();
System.out.printf("영어점수 입력?");
studentGrade[i][1] = scan.nextInt();
System.out.printf("수학점수 입력?");
studentGrade[i][2] = scan.nextInt();
}
int[] total = new int[studentNum];
double[] avg = new double[studentNum];
for(int i = 0; i < total.length; i++) {
for(int j = 0; j <studentGrade[i].length; j++) {
total[i] += studentGrade[i][j];
}
avg[i] = total[i]/3.0;
}
System.out.println("========================");
System.out.println("NO KOR ENG MAT TOT AVG");
for(int i = 0; i < studentGrade.length; i++) {
System.out.printf("%3d %3d %3d %4d %4d %6.2f", i+1, studentGrade[i][0],studentGrade[i][1],studentGrade[i][2],total[i],avg[i]);
System.out.println();
}
}
}
이번 문제는 꽤 다양한 정답이 있을거 같습니다. 출력값만 같다면 모두 틀린것이 아닙니다.
'Java > Java_기초부터 _끝까지' 카테고리의 다른 글
Java 기초 배열 - 연습문제(6) (0) | 2020.10.26 |
---|---|
Java 기초 배열 - 연습문제(5) (0) | 2020.10.26 |
Java 기초 배열 - 연습문제(3) (0) | 2020.10.26 |
Java 기초 배열 - 연습문제(2) (0) | 2020.10.26 |
Java 기초 배열 - 연습문제(1) (0) | 2020.10.26 |