반응형

문제

학생들의 점수를 분석하는 프로그램을 만들려고 합니다. 키보드로부터 학생 수와 각 학생들의 점수를 입력받고 while 문과 Scanner의 nextLine() 메소드를 이용해서 최고 점수 및 평균 점수를 출력하는 코드를 작성해보세요.

 

 

 

결과

 

 

 

 

 

문제 풀이

더보기

 

import java.util.Scanner;

public class StudentScoreProgram_Q3 {

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);
		int Score = 0;
		int max = 0;
		int sum = 0;
		int[] arr = null; // 중요 !!
		 
		
		while(true) {
			System.out.println("--------------------------------------------");
			System.out.println("1.학생수 | 2.점수입력 | 3.점수리스트 | 4.분석 | 5.종료");
			System.out.println("--------------------------------------------");
			System.out.print("선택> ");
			String choice = sc.nextLine();
			
			if("1".equals(choice)) {
				System.out.print("학생수>");;	
				int size = sc.nextInt(); // 중요 !!
				arr = new int[size];  // 중요 !!
				
			} else if("2".equals(choice)){
				for(int i=0; i<arr.length; i++) {
				System.out.print("scores[" + i + "]> ");
				arr[i] = sc.nextInt();
				}
				
			} else if("3".equals(choice)){
				for(int i=0; i<arr.length; i++) {
					System.out.print("scores[" + i + "]> ");
					System.out.println(arr[i]);
				}		
			} 

			else if("4".equals(choice)) {
				for (int i = 0; i<arr.length; i++) {
					if (arr[i] > max) {
						max = arr[i];						
					}			
				}
				System.out.println("최고 점수 : " + max);
				for (int i = 0; i<arr.length; i++) {
					sum += arr[i];
				}
				double avg = (double)(sum / 3);
				System.out.println("평균 점수: " + avg);
			 } else if("5".equals(choice)) {
				System.out.print("프로그램 종료");
				break;
			}
				
			}
				
		
		}
	}

 

 

+ Recent posts