기출문제/정보처리기사

2022년 1회 정보처리기사 기출문제 73번

엉클지니 2025. 3. 6. 23:36

73. 다음 JAVA 프로그램이 실행되었을 때, 실행 결과는?

BCDABCA      BCDABCC

CDDACCC    CDDACCA

 

 

문제 분석: 주어진 JAVA 코드 설명

public class Ape {
    static void rs(char a[]) {
        for(int i = 0; i < a.length; i++) {
            if(a[i] == 'B')
                a[i] = 'C';
            else if(i == a.length - 1)
                a[i] = a[i-1];
            else
                a[i] = a[i+1];
        }
    }

    static void pca(char a[]) {
        for(int i = 0; i < a.length; i++)
            System.out.print(a[i]);
        System.out.println();
    }

    public static void main(String[] args) {
        char c[] = {'A', 'B', 'D', 'D', 'A', 'B', 'C'};
        rs(c);
        pca(c);
    }
}

1️⃣ main()에서 배열 초기화

char c[] = {'A', 'B', 'D', 'D', 'A', 'B', 'C'};

초기값:
A B D D A B C


2️⃣ rs() 실행 (배열 변경 과정 분석)

첫 번째 반복

  • i=0: a[0] = a[1] = 'B'
  • i=1: 'B'이므로 'C'로 변경
  • i=2: a[2] = a[3] = 'D'
  • i=3: a[3] = a[4] = 'A'
  • i=4: a[4] = a[5] = 'B'
  • i=5: 'B'이므로 'C'로 변경
  • i=6: 마지막 인덱스이므로 a[6] = a[5] = 'C'

결과 배열

B C D A B C C


3️⃣ pca() 실행 (배열 출력)

for(int i = 0; i < a.length; i++)
    System.out.print(a[i]);
System.out.println();

출력 결과:

BCDABCC

🔥 정답

② BCDABCC


요점 정리

단계 설명 배열 상태

초기 {'A', 'B', 'D', 'D', 'A', 'B', 'C'} ABDDABC
rs() 배열 값 변경 BCDABCC
pca() 출력 결과 BCDABCC

 

반응형