기출문제/정보처리기사

2021년 2회 정보처리기사 기출문제 70번

엉클지니 2025. 3. 23. 01:29

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

 2                3

4                5

 

이 문제는 Java 프로그램에서 do-while 반복문조건문을 사용하는 코드입니다. 주어진 프로그램을 단계별로 분석하여 결과를 확인해 보겠습니다.

주어진 코드

public class arrayl {
    public static void main(String[] args) {
        int cnt = 0;
        do {
            cnt++;  // cnt 값을 1씩 증가시킨다.
        } while (cnt < 0);  // cnt가 0 미만이면 반복, 즉 cnt가 0이 되면 종료된다.
        
        if (cnt == 1)  // cnt가 1이면
            cnt++;  // cnt 값을 1 증가시킨다.
        else  // cnt가 1이 아니면
            cnt = cnt + 3;  // cnt에 3을 더한다.
        
        System.out.printf("%d", cnt);  // cnt 값을 출력한다.
    }
}

1. 변수 초기화

int cnt = 0;
  • cnt의 초기값은 0입니다.

2. do-while 반복문

do {
    cnt++;  // cnt를 1 증가시킨다.
} while (cnt < 0);  // cnt가 0 미만이면 계속 반복
  • 반복문 내부에서는 cnt++가 실행되어 cnt가 1 증가합니다.
  • 그런데 cnt는 0에서 시작하고, cnt++가 실행되면 cnt는 1이 됩니다.
  • 이제 cnt의 값은 1이고, while 조건은 cnt < 0이므로, cnt가 더 이상 0 미만이 아니므로 반복문이 종료됩니다.
  • 결과: cnt는 1입니다.

3. 조건문

if (cnt == 1)  // cnt가 1이면
    cnt++;  // cnt 값을 1 증가시킨다.
else  // cnt가 1이 아니면
    cnt = cnt + 3;  // cnt에 3을 더한다.
  • 현재 cnt는 1입니다.
  • cnt == 1이므로 cnt++가 실행되어 cnt는 2가 됩니다.

4. 출력

System.out.printf("%d", cnt);  // cnt 값을 출력한다.
  • 최종적으로 cnt는 2입니다.

결론

  • 프로그램을 실행한 후 출력 값은 2입니다.

정답은 ❶ 2입니다! 🎉

 

 

 

반응형