정보처리기사 · 실기

2024년 3회 정보처리기사 실기 기출 유형

답안을 직접 작성하고 정답과 비교해 보세요. 서술형 답안은 표현이 다를 수 있어 직접 확인합니다.

← 회차 목록

주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

20문항미확인 20문항

2024년 3회 주제 · 연습 1

프로그래밍 언어

다음 Java 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. Java 21 기준이다.

public class Main {
    static String pick(Object x){return "O";}
    static String pick(Number x){return "N";}
    static String pick(Integer x){return "I";}
    static <T> String wrap(T x){return pick(x);}
    public static void main(String[] args) {
        Integer x=5;
        System.out.print(pick(x)+wrap(x)+pick((Number)x));
    }
}
정답·해설 보기

정답

ION

해설

직접 Integer를 넘기면 I, Number로 형변환하면 N이다. 상한이 Object인 T를 받는 wrap 내부에서는 컴파일 시 Object 오버로드가 선택되어 O이다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 2

프로그래밍 언어

다음 Python 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. Python 3 기준이다.

a = {7, 8, 9}
b = {8, 10}
print(sorted((a | b) - (a & b)))
정답·해설 보기

정답

[7, 9, 10]

해설

합집합에서 교집합을 빼므로 한쪽에만 있는 값들이 남는다. 집합 자체의 출력 순서 대신 sorted로 정렬된 리스트를 출력한다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 3

SQL·데이터베이스

아래 테이블에 다음 SQL을 실행했을 때 마지막 SELECT의 결과를 쓰시오. NULL은 결측값이며, 결과는 열을 공백으로 구분하고 행마다 줄을 바꾸어 적으시오.

Scores
idnameteamscorementor
1AriA66NULL
2BoraB611
3CianA661
4DaniBNULL2
5EvanA512
SELECT s.name FROM Scores s
WHERE EXISTS (SELECT 1 FROM Scores m WHERE m.id = s.mentor AND m.team = 'A')
ORDER BY s.id;
정답·해설 보기

정답

Bora Cian

해설

현재 행의 mentor가 A팀인 행을 가리키는지 상관 하위 질의로 검사한다. EXISTS는 일치하는 행이 하나라도 있으면 참이다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 4

네트워크·운영체제

프레임 3개가 처음에 모두 비어 있다. 참조열 1, 2, 3, 1, 4, 2, 5, 1을 LRU로 처리할 때 페이지 부재 수와 마지막에 남은 페이지를 오래전에 참조한 순서부터 쓰시오.

정답·해설 보기

정답

부재 7회 2, 5, 1

해설

가장 오래 참조되지 않은 페이지부터 교체한다. 매 접근 후 오래된 순서의 프레임 상태: [1] → [1,2] → [1,2,3] → [2,3,1] → [3,1,4] → [1,4,2] → [4,2,5] → [2,5,1]

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 5

정보보안

피해자 주소를 출발지로 위조한 ICMP Echo 요청을 브로드캐스트 주소로 보내 다수의 응답이 피해자에게 모이게 한다. 공격을 쓰시오.

정답·해설 보기

정답

스머프(Smurf) 공격

해설

ICMP와 브로드캐스트 응답을 이용한 반사·증폭 서비스 거부 공격이다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 6

소프트웨어 설계·구축

GoF 패턴의 생성·구조·행위 분류 중 Observer, Strategy, Iterator가 속하는 분류를 쓰시오.

정답·해설 보기

정답

행위(Behavioral) 패턴

해설

객체 사이의 책임 분배와 알고리즘·통신 방식에 관련된 패턴들이다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 7

프로그래밍 언어

다음 C 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. C11, ASCII 문자 집합을 기준으로 한다.

#include <stdio.h>

int main(void) {
    int data[] = {7, 11, 14, 16};
    int *p=data+1;
    p[1] += 2;
    printf("%d %d %d", *p, *(p+1), data[3]-data[0]);
    return 0;
}
정답·해설 보기

정답

11 16 9

해설

p는 data[1]을 가리킨다. p[1]과 *(p+1)은 모두 data[2]이므로 같은 원소가 수정된다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 8

SQL·데이터베이스

관계의 기본키는 NULL을 가질 수 없으며 각 튜플을 유일하게 식별해야 한다. 이 무결성의 이름을 쓰시오.

정답·해설 보기

정답

개체 무결성

해설

기본키의 고유성과 NOT NULL 성질에 관련된다. 외래키가 참조하는 행의 존재를 다루는 참조 무결성과 다르다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 9

네트워크·운영체제

https://learn.example.org:8443/unit/list?year=2025#top에서 스킴, 호스트, 포트, 경로, 질의, 프래그먼트를 순서대로 쓰시오.

정답·해설 보기

정답

https / learn.example.org / 8443 / /unit/list / year=2025 / top

해설

물음표 뒤는 질의, # 뒤는 프래그먼트이다. 경로는 /unit/list이며 포트가 포함되지 않는다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 10

프로그래밍 언어

다음 Python 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. Python 3 기준이다.

values = list(range(3, 9))
print(sum(values[::2]) - min(values))
정답·해설 보기

정답

12

해설

인덱스 0·2·4의 합에서 전체 리스트의 최소값을 한 번 뺀다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 11

프로그래밍 언어

다음 Java 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. Java 21 기준이다.

public class Main {
    static class Base {
        int value=5;
        Base(){System.out.print(read()+" ");}
        int read(){return value;}
    }
    static class Child extends Base {
        int value=2;
        int read(){return value+1;}
    }
    public static void main(String[] args) {
        Child child=new Child();
        System.out.print(child.read());
    }
}
정답·해설 보기

정답

1 3

해설

부모 생성자 실행 시에도 read 호출은 Child의 재정의 메서드로 연결된다. 그때 Child.value의 명시적 초기화는 아직 실행되지 않아 기본값 0이다. 생성 완료 후에는 설정된 값에 1을 더한다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 12

프로그래밍 언어

다음 C 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. C11, ASCII 문자 집합을 기준으로 한다.

#include <stdio.h>
struct Item { int count; double price; };

int main(void) {
    struct Item x={7, 2.5};
    struct Item *p=&x;
    p->count += 2;
    printf("%d %.1f", x.count, p->count*p->price);
    return 0;
}
정답·해설 보기

정답

9 22.5

해설

구조체 포인터 p는 x의 주소를 가진다. p->count 수정은 x.count에 반영되며, 수정된 개수와 단가를 곱한다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 13

테스트·품질관리

① 실행문을 적어도 한 번 실행 ② 각 결정의 참·거짓 결과를 실행 ③ 결정 안의 개별 조건이 참·거짓을 갖도록 실행하는 커버리지를 차례로 쓰시오.

정답·해설 보기

정답

① 문장 커버리지 ② 분기(결정) 커버리지 ③ 조건 커버리지

해설

조건 커버리지와 분기 커버리지는 서로 동일하지 않다. 복합 조건에서는 개별 조건 결과와 전체 결정 결과를 구별해야 한다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 14

소프트웨어 설계·구축

UML 관계에서 ① 일반 클래스와 특수 클래스의 상속 관계 ② 서로 연결되어 있음을 나타내는 관계 ③ 한 요소의 변경이 다른 요소의 사용에 영향을 줄 수 있는 관계를 쓰시오.

정답·해설 보기

정답

① 일반화 ② 연관 ③ 의존

해설

일반화는 실선과 빈 삼각형, 연관은 실선, 의존은 보통 점선 화살표로 표현한다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 15

SQL·데이터베이스

① 다른 관계의 키를 참조 ② 유일성과 최소성 충족 ③ 후보키 중 기본키로 선택되지 않음 ④ 유일성만 요구하는 키를 차례로 쓰시오.

정답·해설 보기

정답

① 외래키 ② 후보키 ③ 대체키 ④ 슈퍼키

해설

후보키는 최소성을 만족하는 슈퍼키이다. 외래키 자체가 항상 해당 테이블의 유일한 식별자는 아니다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 16

프로그래밍 언어

다음 C 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. C11, ASCII 문자 집합을 기준으로 한다.

#include <stdio.h>

int main(void) {
    int x=5;
    int a=x++;
    int b=++x;
    printf("%d %d %d", a,b,x);
    return 0;
}
정답·해설 보기

정답

5 7 7

해설

후위 증가는 증가 전 값을 a에 저장하고 x를 증가시킨다. 다음 문장의 전위 증가는 x를 먼저 증가시킨 뒤 b에 저장한다. 각 증가는 별도 문장에서 수행된다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 17

정보보안

공용 네트워크 위에 논리적인 전용 통신 경로를 구성하고 보안 프로토콜 등을 통해 원격 사용자를 내부망에 연결하는 기술의 약어를 쓰시오.

정답·해설 보기

정답

VPN

해설

Virtual Private Network이다. 구체적인 암호화·인증 보장은 사용하는 프로토콜과 설정에 따라 달라진다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 18

프로그래밍 언어

다음 Java 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. Java 21 기준이다.

public class Main {
    static class Base { int value; Base(int v){value=v;} int read(){return value;} }
    static class Child extends Base {
        Child(int v){super(v+2);}
        @Override int read(){return super.read()*2;}
    }
    public static void main(String[] args) {
        Base item=new Child(4);
        System.out.print(item.read());
    }
}
정답·해설 보기

정답

12

해설

Child 생성자가 super에 4+2을 전달한다. 변수의 선언형은 Base여도 실제 객체가 Child이므로 재정의한 read가 실행되고 부모의 값에 2를 곱한다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 19

프로그래밍 언어

다음 Java 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. Java 21 기준이다.

public class Main {

    public static void main(String[] args) {
        int result=6;
        try {
            int divisor=0;
            result+=12/divisor;
            System.out.print("T");
        } catch(ArithmeticException e) {
            result+=3; System.out.print("E");
        } finally {
            result+=2; System.out.print("F");
        }
        System.out.print(result);
    }
}
정답·해설 보기

정답

EF11

해설

정수 0 나눗셈은 ArithmeticException을 발생시키며 덧셈 대입은 완료되지 않는다. 예외 여부와 관계없이 finally를 실행한 뒤 최종 result를 출력한다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

2024년 3회 주제 · 연습 20

네트워크·운영체제

재난 현장의 단말들이 고정된 기지국 없이 서로 연결해 임시 무선망을 만들었다. 이 네트워크의 이름을 쓰시오.

정답·해설 보기

정답

애드혹(Ad hoc) 네트워크

해설

중앙 기반 시설 없이 노드들이 통신하며 다중 홉 전달을 할 수도 있다. 이동 노드 환경은 MANET으로 부른다.

학습용 재구성 · 주제 참고: Life-Journey · 2024년 3회 비공식 복원 (새 창)

답안과 비교한 결과

답안과 확인 상태는 현재 브라우저에만 저장됩니다. ‘맞았어요’ 표시는 본인이 확인한 학습 기록이며 실제 시험 점수가 아닙니다.

카톡에서 정보 얻기