📝 기출문제 전체 보기
정보처리기사 실기 2020년 3회차 기출 복원입니다. 각 문제 아래의 「정답·해설 보기」를 펼치면 정답과 해설이 나타나요. 실전 시험 환경(타이머·자동 채점·오답 누적)에서 풀어보고 싶다면 글 맨 아래 「직접 풀러가기」를 눌러주세요.
문제 1
단답형리팩토링의 목적에 대하여 서술하시오.
정답·해설 보기▾
모범답안
복잡한 코드의 단순화, 소스의 가독성을 통해 유지보수성 향상, 유연한 시스템, 생산성 향상, 품질 향상이 있다.
키워드: 리팩토링, 가독성, 유지보수성, 품질 향상, 생산성
해설
리팩토링은 결과의 변경 없이 코드의 구조를 재조정하는 작업이다. 복잡한 코드를 단순화하고 가독성을 높여 유지보수성과 생산성, 품질을 향상시키며 더 유연한 시스템을 만드는 것이 목적이다.
문제 2
단답형다음은 C언어 소스 코드이다. 출력 결과를 쓰시오.
정답·해설 보기▾
모범답안
0
키워드: 0
해설
c 의 초기값이 0 이고 반복문에서 c *= i 로 c 에 i 를 곱한 값을 다시 저장한다. 0 에 어떤 수를 곱해도 0 이므로 반복이 끝나도 c 는 그대로 0 이고 0 이 출력된다.
문제 3
단답형대표적인 내부 라우팅 프로토콜로 다익스트라 알고리즘을 이용한 대규모 네트워크에 적합한 링크 상태 라우팅 프로토콜로 불리는 라우팅 프로토콜은 무엇인가?
정답·해설 보기▾
모범답안
OSPF(Open Shortest Path First)
키워드: OSPF, Open Shortest Path First
해설
다익스트라(Dijkstra) 알고리즘으로 최단 경로를 계산하는 대표적인 링크 상태(Link State) 기반 내부 라우팅 프로토콜은 OSPF(Open Shortest Path First)이다. 대규모 네트워크에 적합하며 홉 카운트 제한이 없다.
문제 4
단답형형상 통제를 설명하시오.
정답·해설 보기▾
모범답안
형상 항목의 버전 관리를 위해서 변경 여부와 변경 활동을 통제하는 활동
키워드: 형상 통제, 버전 관리, 변경 통제, 형상통제위원회
해설
형상 통제(Configuration Control)는 형상 항목의 버전 관리를 위해 변경 요청을 검토하고 변경 여부와 변경 활동을 통제하는 활동이다. 일반적으로 형상통제위원회를 운영하여 변경을 관리한다.
문제 5
단답형심리학자 톰 마릴은 컴퓨터가 메시지를 전달하고, 메시지가 제대로 도착했는지 확인하며, 도착하지 않았을 경우 메시지를 재전송하는 일련의 방법을 '기술적 은어'를 뜻하는 ( )이라는 용어로 정의했다. 괄호 ( ) 안에 들어갈 용어를 쓰시오.
정답·해설 보기▾
모범답안
프로토콜
키워드: 프로토콜, Protocol
해설
서로 다른 시스템이나 기기 간 데이터 교환을 원활하게 하기 위한 표준화된 통신 규약을 프로토콜(Protocol)이라 한다. 메시지 전달, 도착 확인, 재전송 같은 통신 절차의 약속이 프로토콜에 해당한다.
문제 6
단답형TCP/IP에서 오류가 발생하면 ( ) 메시지를 보내서 오류가 발생했음을 알린다. 괄호 ( )안에 들어갈 용어를 쓰시오.
정답·해설 보기▾
모범답안
ICMP(Internet Control Message Protocol)
키워드: ICMP, Internet Control Message Protocol
해설
IP 패킷을 처리할 때 발생하는 오류나 상태 정보를 알려주는 프로토콜은 ICMP(Internet Control Message Protocol)이다. 8바이트 헤더와 가변 길이 데이터 영역으로 구성되며 오류 보고에 사용된다.
문제 7
단답형다음 아래 제어 흐름 그래프가 분기 커버리지를 만족하기 위한 테스팅 순서를 쓰시오.
정답·해설 보기▾
모범답안
1234561, 124567 또는 1234567, 124561
키워드: 1234561, 124567, 1234567, 124561, 1-2-3-4-5-6-1, 1-2-4-5-6-7
해설
분기(결정) 커버리지는 각 분기점의 조건식이 적어도 한 번씩 참과 거짓 결과를 모두 거쳐야 한다. 결정 노드인 2번(X>K?)과 6번(RESULT>1?)이 각각 참과 거짓을 한 번씩 갖도록 경로를 구성하면 1-2-3-4-5-6-1과 1-2-4-5-6-7처럼 두 경로로 모든 분기를 만족한다.
문제 8
단답형다음 조건을 만족하면서, 과목별 점수의 평균이 90이상인 과목이름, 최소점수, 최대점수를 구하는 SQL문을 작성하시오.
- 대소문자를 구분하지 않는다.
- WHERE 구문을 사용하지 않는다.
- GROUP BY, HAVING 구문을 반드시 사용한다.
- 세미콜론(;)은 생략 가능하다.
- 별칭(AS)을 사용해야 한다.
[성적]
과목코드 과목이름 학점 점수 1000 컴퓨터과학 A+ 95 2000 운영체제 B+ 85 1000 컴퓨터과학 B+ 85 2000 운영체제 B 80 [결과]
과목이름 최소점수 최대점수 컴퓨터과학 85 95 정답·해설 보기▾
모범답안
SELECT 과목이름, MIN(점수) AS 최소점수, MAX(점수) AS 최대점수 FROM 성적 GROUP BY 과목이름 HAVING AVG(점수) >= 90;
키워드: SELECT 과목이름, MIN(점수) AS 최소점수, MAX(점수) AS 최대점수 FROM 성적 GROUP BY 과목이름 HAVING AVG(점수) >= 90, SELECT 과목이름, MIN(점수) AS 최소점수, MAX(점수) AS 최대점수 FROM 성적 GROUP BY 과목이름 HAVING AVG(점수) >= 90;
해설
과목이름으로 그룹화(GROUP BY)한 뒤, 그룹별 집계 조건은 WHERE가 아닌 HAVING 절로 지정한다. HAVING AVG(점수) >= 90으로 평균이 90 이상인 과목만 남기고, MIN·MAX 집계함수에 AS 별칭을 붙여 최소점수·최대점수를 출력한다. 컴퓨터과학의 평균은 (95+85)/2=90이므로 결과에 포함된다.
문제 9
단답형학생 테이블에서 이름이 민수인 튜플을 삭제하는 SQL문을 작성하시오.
[학생]
학번 이름 점수 과목이름 1000 김정미 90 알고리즘 2000 강은미 95 데이터베이스 3000 홍길동 90 전산수학 4000 민수 95 운영체제 정답·해설 보기▾
모범답안
DELETE FROM 학생 WHERE 이름 = '민수';
키워드: DELETE FROM 학생 WHERE 이름 = '민수', DELETE FROM 학생 WHERE 이름 = '민수';
해설
특정 조건의 튜플을 삭제할 때는 DELETE FROM 테이블명 WHERE 조건 구문을 사용한다. 이름이 '민수'인 행만 삭제하므로 DELETE FROM 학생 WHERE 이름 = '민수'; 가 된다.
문제 10
단답형릴레이션 A, B가 있을 때 릴레이션 B 조건에 맞는 것들만 릴레이션 A에서 튜플을 꺼내 프로젝션하는 관계 대수의 기호는 무엇인가?
정답·해설 보기▾
모범답안
÷
키워드: ÷, 디비전, Division, 나누기
해설
릴레이션 B의 모든 튜플과 관련된 A의 튜플을 골라 프로젝션하는 순수 관계 연산자는 디비전(Division)이며 기호는 ÷이다. 순수 관계 연산자에는 셀렉트(σ), 프로젝트(π), 조인(⋈), 디비전(÷)이 있다.
문제 11
단답형헝가리안 표기법(Hungarian Notation)에 대해서 서술하시오.
정답·해설 보기▾
모범답안
헝가리안 표기법은 식별자 표기 시 접두어에 자료형을 붙이는 표기법
키워드: 헝가리안 표기법, 접두어, 자료형, Hungarian Notation
해설
헝가리안 표기법은 식별자를 표기할 때 접두어에 변수의 자료형을 붙이는 표기법이다. 예를 들어 문자열 변수에 sz를 붙여 szGoodMan처럼 표기한다. 카멜·파스칼·스네이크 표기법과 구분되는 방식이다.
문제 12
단답형테스트의 종류 중, 동치분할 테스트, 경계값 분석 테스트 등의 종류가 있는 테스트 기법을 쓰시오.
정답·해설 보기▾
모범답안
블랙박스 테스트 (명세 기반 테스트)
키워드: 블랙박스 테스트, 명세 기반 테스트, Black Box Test
해설
동치(동등) 분할, 경계값 분석, 원인-효과 그래프, 오류 예측, 비교 검사 등은 모두 내부 구조가 아닌 기능·명세를 기준으로 검사하는 블랙박스 테스트(명세 기반 테스트) 기법에 속한다.
문제 13
단답형다음은 C언어 소스 코드이다. 출력 결과를 쓰시오.
정답·해설 보기▾
모범답안
234
키워드: 234
해설
r1()은 4를 반환하고, r10()은 30 + r1() = 34, r100()은 200 + r10() = 234를 반환한다. main에서 r100()의 결과 234가 출력된다.
문제 14
단답형DB스키마에 대해서 서술하시오.
정답·해설 보기▾
모범답안
데이터베이스의 구조, 제약조건 등의 정보를 담고 있는 기본적인 구조
키워드: 스키마, 구조, 제약조건, Schema
해설
스키마(Schema)는 데이터베이스의 전체적인 구조와 데이터 타입, 제약조건 등에 대한 명세를 정의한 것이다. 데이터베이스를 구성하는 개체·속성·관계와 제약조건에 대한 정보를 담고 있는 기본 구조이다.
문제 15
단답형다음은 자바 코드이다. 출력 결과를 쓰시오.
정답·해설 보기▾
모범답안
Vehicle name:Spark
키워드: Vehicle name:Spark
해설
Car 생성자에서 setName("Spark")로 name 필드에 Spark가 저장된다. obj.getName()은 인자가 없는 호출이므로 Car에서 오버라이딩되지 않은 부모 Vehicle의 getName()이 실행되어 "Vehicle name:" + name인 "Vehicle name:Spark"가 출력된다.
문제 16
단답형UI 설계 원칙 중 직관성에 대해서 쓰시오.
정답·해설 보기▾
모범답안
누구나 쉽게 이해하고 쉽게 사용할 수 있어야 하는 UI 설계 원칙
키워드: 직관성, 쉽게 이해, 쉽게 사용, 쉬운 검색, 쉬운 사용성
해설
UI 설계 원칙 중 직관성은 누구나 쉽게 이해하고 쉽게 사용할 수 있어야 한다는 원칙이다. 사용자가 별도의 학습 없이 기능과 흐름을 자연스럽게 파악할 수 있도록 해야 하며, 쉬운 검색성과 쉬운 사용성이 주요 특성으로 제시된다. 나머지 주요 원칙으로는 유효성, 학습성, 유연성이 있다.
문제 17
단답형다음은 자바 코드이다. 출력 결과를 쓰시오.
정답·해설 보기▾
모범답안
30
키워드: 30
해설
i를 1부터 10까지 증가시키며 홀수(i%2==1)이면 continue로 건너뛰고 짝수만 sum에 더한다. 따라서 2+4+6+8+10 = 30이 출력된다.
문제 18
단답형EAI 유형에는 메세지 버스(Message bus), 하이브리드(Hybrid), ( 1. ), ( 2. ) 4가지가 있다.
정답·해설 보기▾
모범답안
1. 포인트 투 포인트(Point-to-point) 2. 허브 앤 스포크(Hub & Spoke)
키워드: 1. 포인트 투 포인트 2. 허브 앤 스포크, Point-to-point Hub & Spoke, 포인트 투 포인트 허브 앤 스포크
해설
EAI(기업 응용 통합) 구축 유형에는 메시지 버스, 하이브리드 외에 1:1 방식으로 통합하는 포인트 투 포인트(Point-to-point)와 단일 허브를 통해 데이터를 전송하는 중앙 집중 방식인 허브 앤 스포크(Hub & Spoke)가 있다.
문제 19
단답형C++에서 생성자란 무엇인지 쓰시오.
정답·해설 보기▾
모범답안
해당 클래스의 객체가 생성될 때 자동으로 호출되는 특수한 종류의 메서드
키워드: 생성자, 객체 생성, 자동 호출, Constructor
해설
생성자(Constructor)는 클래스의 객체(인스턴스)가 생성되는 시점에 자동으로 호출되는 특수한 메서드로, 주로 멤버 변수를 초기화하는 역할을 한다. 클래스 이름과 동일한 이름을 가지며 반환형이 없다.
문제 20
단답형학생 테이블에 주소 속성을 추가하는 SQL문을 작성하시오.
( 1. ) TABLE 학생 ( 2. ) 주소 VARCHAR(20);
정답·해설 보기▾
모범답안
1. ALTER 2. ADD
키워드: 1. ALTER 2. ADD, ALTER TABLE 학생 ADD 주소 VARCHAR(20)
해설
기존 테이블의 구조를 변경할 때는 ALTER TABLE을 사용하고, 새 속성(컬럼)을 추가할 때는 ADD를 사용한다. 따라서 ALTER TABLE 학생 ADD 주소 VARCHAR(20); 이 된다.