학원/JAVA

9.21 6-3일 차 ArrayExample

도원결의 2022. 9. 21. 23:58

ArrayExample

 

1] 학생수를 사용자로부터 입력받자

    -Scanner클래스 사용  

2] 입력받은 학생 수만큼 국영수 점수 및 총점를 저장할수 있는 int형 배열을 선언하고  메모리를 할당해라  

3] 학생 수만큼 각 학생의 국영수 점수를 입력받아 2]에서 생성한 배열에 저장해라.

    -Scanner클래스 사용  

4] 각 학생의 국영수 점수 및 총점 그리고 평균을 출력하여라.   

 

String[] subjects = {"국어","영어","수학"};     =>사용자에게 메시지를 뿌리기위한 데이터

  subjects[k] Scanner sc = new Scanner(System.in);

1] 학생수를 사용자로부터 입력받자

      System.out.println("학생수를 입력하세요?");

      int numberOfsutdents = sc.nextInt();

 

2] 입력받은 학생 수만큼 국영수 점수 및 총점를 저장할수 있는 int형 배열을 선언하고  메모리를 할당해라

int[ ][ ] students = new int [numberOfsutdents][NUMBEROFSUBJECTS+1];

 

3] 학생 수만큼 각 학생의 국영수 점수를 입력받아   2]에서 생성한 배열에 저장해라.

for(int i = 0 ; i <students.length ;i++) {            =>i번째 학생 국영수 점수

System.out.println(i+1+"번째 학생의 점수를 입력하세요?");

            for(int k = 0; k < NUMBEROFSUBJECTS;k++) {

                   System.out.println(subjects[k]+"점수를 입력하세요?");

                              students[i][k] = sc.nextInt(); =>각과목 점수입력받기

                                students[i][NUMBEROFSUBJECTS] += students[i][k]; =>각 과목의 점수를 마지막방에 누적

                          }

                 }

 

4] 각 학생의 국영수 점수 및 총점 그리고 평균을 출력하여라.

for(int i=0 ; i < numberOfsutdents ; i++) {

       System.out.println("==========================");

       System.out.println(i+1+"번째 학생 성적");

       System.out.println("==========================");

      System.out.printf("국어:%d,영어:%d,수학:%d,총점:%d,평균:%.2f%n",  국영수 점수 총점 평균출력

students[i][0],

                                  students[i][1],

                                  students[i][2],

                                  students[i][NUMBEROFSUBJECTS],

                                 (double)students[i][NUMBEROFSUBJECTS]/NUMBEROFSUBJECTS);

                    }

 

 

 

++++ 복습하다가 출력할 때 이중for문을 써보고 싶어서 바꿨는데..... 더 코드가 지저분해보임.. 이건 더 연구 해봐야할