정보처리기사 · 실기

2021년 2회 정보처리기사 실기 기출 유형

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

← 회차 목록

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

20문항미확인 20문항

2021년 2회 주제 · 연습 1

네트워크·운영체제

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

정답·해설 보기

정답

애드혹(Ad hoc) 네트워크

해설

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

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

답안과 비교한 결과

2021년 2회 주제 · 연습 2

소프트웨어 설계·구축

① 버튼·메뉴처럼 사용자가 시스템과 접하는 조작 접점 ② 이용 전후의 감정·만족·인식을 포함하는 전체 경험에 해당하는 약어를 쓰시오.

정답·해설 보기

정답

① UI ② UX

해설

UI는 User Interface, UX는 User Experience이다. UX의 범위가 UI의 시각적 구성에만 한정되는 것은 아니다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 3

SQL·데이터베이스

계좌 A의 차감은 성공했지만 B의 입금은 실패했다. 두 변경을 모두 취소해 중간 상태를 남기지 않는 트랜잭션 성질을 쓰시오.

정답·해설 보기

정답

원자성(Atomicity)

해설

하나의 논리적 작업을 구성하는 변경이 전부 반영되거나 전부 취소되어야 한다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 4

SQL·데이터베이스

수강(학생번호, 과목번호, 학생이름, 성적)의 키가 (학생번호, 과목번호)이고 학생번호 → 학생이름이 성립한다. 이 부분 함수 종속을 제거해 만족시키려는 정규형을 쓰시오.

정답·해설 보기

정답

제2정규형(2NF)

해설

1NF를 만족하면서 비주요 속성이 후보키 전체에 완전 함수 종속해야 한다. 학생이름을 학생 관계로 분리하는 방식 등을 고려할 수 있다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 5

SQL·데이터베이스

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

Scores
idnameteamscorementor
1AriA60NULL
2BoraB551
3CianA601
4DaniBNULL2
5EvanA452
UPDATE Scores SET score = score + 2 WHERE team = 'A';
SELECT id, score FROM Scores WHERE team = 'A' ORDER BY id;
정답·해설 보기

정답

1 62 3 62 5 47

해설

WHERE에 해당하는 A팀 행의 점수만 변경한 뒤 SELECT로 변경된 값을 읽는다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 6

SQL·데이터베이스

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

Scores
idnameteamscorementor
1AriA67NULL
2BoraB621
3CianA671
4DaniBNULL2
5EvanA522
Teams
codebonus
A7
B12
C2
SELECT s.name, t.bonus + s.score
FROM Scores s JOIN Teams t ON s.team = t.code
WHERE s.score >= 62 ORDER BY s.id;
정답·해설 보기

정답

Ari 74 Bora 74 Cian 74

해설

팀 코드로 보너스를 연결한 뒤 점수 조건을 만족한 사람의 점수와 보너스를 더한다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 7

프로그래밍 언어

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

x = 64
print(x >> 2, x << 1)
정답·해설 보기

정답

16 128

해설

양의 정수를 오른쪽으로 2비트 이동하면 4로 나눈 몫, 왼쪽으로 1비트 이동하면 2배가 된다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 8

정보보안

블록 크기가 128비트이고 키 길이 128·192·256비트를 지원하는 대칭키 블록 암호 표준을 쓰시오.

정답·해설 보기

정답

AES

해설

Advanced Encryption Standard이다. 키 길이에 따라 라운드 수는 10·12·14이다. 블록 크기가 키 길이와 함께 변하는 것은 아니다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 9

테스트·품질관리

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

정답·해설 보기

정답

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

해설

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

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

답안과 비교한 결과

2021년 2회 주제 · 연습 10

SQL·데이터베이스

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

Scores
idnameteamscorementor
1AriA63NULL
2BoraB581
3CianA631
4DaniBNULL2
5EvanA482
SELECT name, score FROM Scores
WHERE LOWER(name) LIKE '%a%' AND score IS NOT NULL
ORDER BY score DESC, name ASC;
정답·해설 보기

정답

Ari 63 Cian 63 Bora 58 Evan 48

해설

이름을 소문자로 변환한 뒤 a를 포함하는 이름을 선택한다. 점수 내림차순, 동점이면 이름 오름차순이다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 11

소프트웨어 설계·구축

① 수행 순서가 관련된 작업을 묶음 ② 같은 입력·출력 데이터를 사용하는 작업을 묶음 ③ 하나의 명확한 기능에 꼭 필요한 작업을 묶음에 해당하는 응집도를 쓰시오.

정답·해설 보기

정답

① 절차적 ② 통신적(교환적) ③ 기능적 응집도

해설

순서가 중요하다는 사실만으로 앞 작업의 출력이 다음 입력으로 이어지는 순차적 응집도와 같아지지는 않는다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 12

네트워크·운영체제

패킷 교환에서 ① 전송 전에 논리적 경로를 설정하는 방식 ② 각 패킷을 독립적으로 라우팅하는 방식을 쓰시오.

정답·해설 보기

정답

① 가상 회선 방식 ② 데이터그램 방식

해설

가상 회선은 연결 설정과 경로 상태를 이용한다. 데이터그램은 패킷마다 경로가 달라질 수 있어 도착 순서가 보장되지 않을 수 있다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 13

소프트웨어 설계·구축

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

정답·해설 보기

정답

행위(Behavioral) 패턴

해설

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

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

답안과 비교한 결과

2021년 2회 주제 · 연습 14

SQL·데이터베이스

동시에 실행되는 트랜잭션의 충돌을 막기 위해 데이터 접근 전에 잠금을 획득하는 기법의 이름과, 잠금 단위를 크게 할 때 병행성이 어떻게 변하는지 쓰시오.

정답·해설 보기

정답

로킹(Locking). 일반적으로 병행성이 낮아진다.

해설

잠금 범위가 넓으면 한 잠금이 막는 작업이 많아진다. 반면 관리할 잠금 수와 관리 비용은 줄어들 수 있다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 15

소프트웨어 설계·구축

Rumbaugh의 OMT에서 ① 객체·속성·관계 ② 상태와 이벤트에 따른 변화 ③ 입력에서 출력으로의 데이터 변환을 다루는 모델을 쓰시오.

정답·해설 보기

정답

① 객체 모델 ② 동적 모델 ③ 기능 모델

해설

객체 모델은 구조, 동적 모델은 시간에 따른 행위, 기능 모델은 처리와 데이터 흐름을 표현한다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 16

프로그래밍 언어

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

#include <stdio.h>

int main(void) {
    int value=1;
    for (int i=0; i<5; i++) value *= 8;
    printf("%d", value);
    return 0;
}
정답·해설 보기

정답

32768

해설

1에서 시작해 8을(를) 5번 곱하므로 8의 5제곱이다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 17

프로그래밍 언어

객체를 생성하지 않고 클래스 이름으로 호출할 메서드를 선언하려 한다. 멤버를 클래스에 소속시키는 Java 키워드를 쓰시오.

정답·해설 보기

정답

static

해설

static 메서드는 인스턴스 없이 호출할 수 있다. 인스턴스 필드에는 객체 참조를 통해 접근해야 한다.

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

답안과 비교한 결과

2021년 2회 주제 · 연습 18

프로그래밍 언어

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

#include <stdio.h>

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

정답

8 19 9

해설

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

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

답안과 비교한 결과

2021년 2회 주제 · 연습 19

프로그래밍 언어

다음 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+8);}
        @Override int read(){return super.read()*2;}
    }
    public static void main(String[] args) {
        Base item=new Child(6);
        System.out.print(item.read());
    }
}
정답·해설 보기

정답

28

해설

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

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

답안과 비교한 결과

2021년 2회 주제 · 연습 20

테스트·품질관리

통합 테스트에서 ① 아직 없는 하위 모듈의 응답을 대신함 ② 상위 호출 모듈을 대신해 테스트 대상을 호출함에 해당하는 도구를 쓰시오.

정답·해설 보기

정답

① 스텁(Stub) ② 드라이버(Driver)

해설

하향식 통합에서 스텁, 상향식 통합에서 드라이버를 주로 사용한다.

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

답안과 비교한 결과

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

카톡에서 정보 얻기