코딩일기/자격증

[정보처리기사] [ Java ] 배열 생성 및 출력 해설 | 2020년 정보처리기사 기출문제

jhy_2023 2024. 9. 26. 15:42
728x90
반응형

문제

다음은 자바 소스코드이다. 출력 결과를 쓰시오.

public class Main {
    public static int[] makeArray(int n) {
        int[] t = new int[n]; 
        for (int i = 0; i < n; i++) {
            t[i] = i;
        }
        return t;
    }

    public static void main(String[] args) {
        int[] a = makeArray(4);
        for (int i = 0; i < a.length; i++) {
            System.out.print(a[i] + " ");
        }
    }
}

정답

0 1 2 3


반응형

해설

코드 설명

주어진 코드는 자바에서 정수 배열을 생성하고, 그 배열의 요소를 출력하는 프로그램입니다. 코드를 단계별로 살펴보겠습니다.

public class Main {
    
    // 배열을 생성하는 메소드
    public static int[] makeArray(int n) {
        int[] t = new int[n];  // 길이 n의 배열 t 생성
        for (int i = 0; i < n; i++) {  // 배열의 각 인덱스에 값 할당
            t[i] = i;  // t[i]에 i 값을 넣음
        }
        return t;  // 배열 t 반환
    }

    // 메인 메소드
    public static void main(String[] args) {
        int[] a = makeArray(4);  // 길이가 4인 배열 a 생성
        for (int i = 0; i < a.length; i++) {  // 배열 a의 각 요소를 출력
            System.out.print(a[i] + " ");  // 배열의 요소를 공백으로 구분하여 출력
        }
    }
}

makeArray 메소드:

  • 이 메소드는 매개변수 n을 받아들여 길이가 n인 정수 배열 t를 생성합니다.
  • int[] t = new int[n];는 길이 n의 배열을 생성하고, 모든 요소는 기본값인 0으로 초기화됩니다.
  • for (int i = 0; i < n; i++) 루프를 통해, 배열의 각 요소에 i 값을 할당합니다. 즉, 배열 t는 인덱스와 동일한 값을 가지게 됩니다.
  • 메소드가 끝나면 배열 t를 반환합니다.
728x90

main 메소드:

  • makeArray(4)를 호출하여 길이가 4인 배열 a를 생성합니다.
  • 생성된 배열 a는 [0, 1, 2, 3]의 값을 가지게 됩니다. 각 인덱스에 해당하는 값이 배열에 저장됩니다.
  • for (int i = 0; i < a.length; i++) 루프를 사용하여 배열 a의 모든 요소를 출력합니다. 배열의 인덱스는 0부터 시작하기 때문에 요소의 마지막 인덱스는 3이지만, 배열의 길이(length)는 요소의 개수인 4입니다.
  • System.out.print(a[i] + " ");를 통해 배열의 각 요소를 공백으로 구분하여 출력합니다.

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

728x90
반응형