Super Kawaii Cute Cat Kaoani
본문 바로가기
{etc}/qualifications

[정보처리기사] 정보처리 기사 필기 02회 오답 정리

by wonee1 2026. 1. 30.
728x90

 

 

 

2과목 소프트웨어 개발

 

21.통합 테스트(Integration Test)와 관련한 설명으로 틀린것은?
  • 1)시스템을 구성하는 모듈의 인터페이스와 결합을 테스트하는 것이다.
  • 2)하향식 통합 테스트의 경우 넓이 우선(Breadth First) 방식으로 테스트를 할 모듈을 선택할 수 있다.
  • 3)상향식 통합 테스트의 경우 시스템 구조도의 최상위에 있는 모듈을 먼저 구현하고 테스트한다.
  • 4)모듈 간의 인터페이스와 시스템의 동작이 정상적으로 잘되고 있는지를 빨리 파악하고자 할 때 상향식 보다는 하향식 통합 테스트를 사용하는 것이 좋다.
[정답:3번]

상향식 통합 테스트는 프로그램의 하위 모듈에서 상위 모듈 방향으로 통합하면서테스트하는 기법입니다. 통합 테스트에서는 상향식 테스트와 하향식 테스트가 중요합니다.

33.다음은 인스펙션(Inspection) 과정을 표현한 것이다. (가)~(마)에 들어갈 말을 [보기]에서 찾아 바르게 연결한 것은?
  • 1)(가) - ㉡, (나) - ㉢
  • 2)(나) - ㉠, (다) - ㉢
  • 3)(다) - ㉢, (라) - ㉤
  • 4)(라) - ㉣, (마) - ㉢
[정답:2번]

인스펙션의 과정을 올바로 나열하면 ‘계획 → 사전 교육 → 준비 → 인스펙션 회의 → 수정 → 후속 조치’입니다. 인스펙션의 과정을 순서대로 나열할 수 있도록 기억해 두세요.

35.단위 테스트(Unit Test)와 관련한 설명으로 틀린 것은?
  • 1)구현 단계에서 각 모듈의 개발을 완료한 후 개발자가 명세서의 내용대로 정확히 구현되었는지 테스트한다.
  • 2)모듈 내부의 구조를 구체적으로 볼 수 있는 구조적 테스트를 주로 시행한다.
  • 3)필요 데이터를 인자를 통해 넘겨주고, 테스트 완료 후 그결과값을 받는 역할을 하는 가상의 모듈을 테스트 스텁(Stub)이라고 한다.
  • 4)테스트할 모듈을 호출하는 모듈도 있고, 테스트할 모듈이 호출하는 모듈도 있다
[정답:3번]
③번은 테스트 드라이버(Test Driver)에 대한 설명입니다. 테스트 스텁(Test Stub)은제어 모듈이 호출하는 타 모듈의 기능을 단순히 수행하는 도구로, 일시적으로 필요한 조건만을 가지고 있는 시험용 모듈입니다. 테스트 드라이버와 테스트 스텁의 개념을 정확히 기억하고, 나머지 보기를 통해 단위 테스트의 특징을 정리하세요

 


 

4과목 프로그래밍 언어 활용

 

 

63.다음 C언어 프로그램이 실행되었을 때, 실행 결과는?
  • 1)30
  • 2)60
  • 3)80
  • 4)120
[정답:2번]

사용된 코드의 의미는 다음과 같습니다.

#include <stdio.h>
struct st { ==> 구조체 st를 정의한다.
int a; ==> 정수형 변수 a를 선언한다.
int c[10]; ==> 10개의 요소를 갖는 정수형 배열 c를 선언한다.
};
int main(int argc, char* argv[ ]) {
❶ int i= 0;
❷ struct st ob1;
❸ struct st ob2;
❹ ob1.a = 0;
❺ ob2.a = 0;
❻ for (i = 0; i < 10; i++) {
❼ ob1.c[i] = i;
❽ ob2.c[i] = ob1.c[i] + i;
}
❾ for (i = 0; i < 10; i = i + 2) {
❿ ob1.a = ob1.a + ob1.c[i];
Ⓐ ob2.a = ob2.a + ob2.c[i];
}
Ⓑ printf("%d", ob1.a + ob2.a);
Ⓒ return 0;
}

 

❶ 정수형 변수 i를 선언하고 0으로 초기화한다.

❷ 구조체 st의 변수 ob1을 선언한다.

❸ 구조체 st의 변수 ob2를 선언한다.

❹ ob1.a에 0을 저장한다.

❺ ob2.a에 0을 저장한다.

❻ 반복 변수 i가 0부터 1씩 증가하면서 10보다 작은 동안 ❼, ❽번을 반복 수행한다.

❼ ob1.c[i]에 i의 값을 저장한다.

❽ ob2.c[i]에 ob1.c[i]+i를 저장한다.

반복문 실행에 따른 변수들의 변화는 다음과 같다.

❾ 반복 변수 i가 0부터 2씩 증가하면서 10보다 작은 동안 ❿, Ⓐ번을 반복 수행한다.

❿ ob1.a에 ob1.c[i]의 값을 누적시킨다.

Ⓐ ob2.a에 ob2.c[i]의 값을 누적시킨다.

반복문 실행에 따른 변수들의 변화는 다음과 같다.



Ⓑ ob1.a와 ob2.a의 값을 합하여 정수로 출력한다.

결과 60

Ⓒ main( ) 함수에서의 ‘return 0’은 프로그램의 종료를 의미한다.

 
 
 
77.사용자 수준에서 지원되는 스레드(thread)가 커널에서지원되는 스레드에 비해 가지는 장점으로 옳은 것은?
  • 1)한 프로세스가 운영체제를 호출할 때 전체 프로세스가대기할 필요가 없으므로 시스템 성능을 높일 수 있다.
  • 2)동시에 여러 스레드가 커널에 접근할 수 있으므로 여러스레드가 시스템 호출을 동시에 사용할 수 있다.
  • 3)각 스레드를 개별적으로 관리할 수 있으므로 스레드의독립적인 스케줄링이 가능하다.
  • 4)커널 모드로의 전환 없이 스레드 교환이 가능하므로 오버헤드가 줄어든다.
[정답:4번]
①, ②, ③번은 커널 수준 스레드에 대한 설명입니다.
 
 
78.한 모듈이 다른 모듈의 내부 기능 및 그 내부 자료를 참조하는 경우의 결합도는?
  • 1)내용 결합도(Content Coupling)
  • 2)제어 결합도(Control Coupling)
  • 3)공통 결합도(Common Coupling)
  • 4)스탬프 결합도(Stamp Coupling)
[정답:1번]
한 모듈이 다른 모듈의 내부 기능 및 그 내부 자료를 참조하는 경우의 결합도는 내용 결합도(Content Coupling)입니다

 

 

 

 

 
79.a[0]의 주소값이 10일 경우 다음 C언어 프로그램이 실행되었을 때의 결과는? (단, int 형의 크기는 4Byte로 가정한다.)
  • 1)14, 10
  • 2)14, M
  • 3)18, 10
  • 4)18, M
[정답:3번]

사용된 코드의 의미는 다음과 같습니다.

#include <stdio.h>
int main(int argc, char* argv[ ]) {
❶ int a[ ] = { 14,22,30,38 };
❷ printf(“%u, ”, &a[2]);
❸ printf(“%u”, a);
❹ return 0;
}

❶ 4개의 요소를 갖는 정수형 배열 a를 선언하고 초기화한다.

❷ a[2]가 가리키는 주소를 부호없는 정수형으로 출력하고, 이어서 쉼표(,)와 공백 한 칸을 출력한다. a[0]의 주소가 10이고, 정수형(int)의 크기가 4Byte이므로 a[2]의 주소 18, 이 출력된다.

결과 18,

❸ a를 부호없는 정수형으로 출력한다. 배열의 이름은 배열의 시작 주소를 가리키므로 10이 출력된다.

결과 18, 10

❹ main( ) 함수에서의 ‘return 0’은 프로그램의 종료를 의미한다.

 

 


 

5과목 정보시스템 구축 관리 

 

84.취약점 관리를 위한 응용 프로그램의 보안 설정과 가장 거리가 먼 것은?
  • 1)서버 관리실 출입 통제
  • 2)실행 프로세스 권한 설정
  • 3)운영체제의 접근 제한
  • 4)운영체제의 정보 수집 제한
[정답:1번]
서버 관리실 출입 통제는 물리적 보안에 포함되는 보안 조치입니다.
 
 
85.소프트웨어 개발 프레임워크와 관련한 설명으로 가장 적절하지 않은 것은?
  • 1)반제품 상태의 제품을 토대로 도메인별로 필요한 서비스 컴포넌트를 사용하여 재사용성 확대와 성능을 보장받을 수 있게 하는 개발 소프트웨어이다.
  • 2)라이브러리와는 달리 사용자 코드에서 프레임워크를 호출해서 사용하고, 그에 대한 제어도 사용자 코드가 가지는 방식이다.
  • 3)설계 관점에 개발 방식을 패턴화시키기 위한 노력의 결과물인 소프트웨어 디자인 패턴을 반제품 소프트웨어 상태로 집적화시킨 것으로 볼 수 있다.
  • 4)프레임워크의 동작 원리를 그 제어 흐름의 일반적인 프로그램 흐름과 반대로 동작한다고 해서 IoC(Inversion of Control)이라고 설명하기도 한다.
[정답:2번]
사용자 코드가 제어를 갖고 직접 호출해서 사용하는 것은 라이브러리(Library)입니다.
 
 
93.대칭 암호 알고리즘과 비대칭 암호 알고리즘에 대한 설명으로 틀린 것은?
  • 1)대칭 암호 알고리즘은 비교적 실행 속도가 빠르기 때문에 다양한 암호의 핵심 함수로 사용될 수 있다.
  • 2)대칭 암호 알고리즘은 비밀키 전달을 위한 키 교환이 필요하지 않아 암호화 및 복호화의 속도가 빠르다.
  • 3)비대칭 암호 알고리즘은 자신만이 보관하는 비밀키를 이용하여 인증, 전자서명 등에 적용이 가능하다.
  • 4)대표적인 대칭키 암호 알고리즘으로는 AES, IDEA 등이있다.
[정답:2번]
대칭 암호 알고리즘은 비밀키(Private Key)를 공유해야 하기 때문에 키 교환이 필요합니다.

 

대칭키 vs 공개키(비대칭키)

  • 대칭키 암호화 방식 : 암복호화에 사용하는 키가 동일함
  • 공개키 암호화 방식 : 암복호화에 사용하는 키가 서로 다르며 비대칭키 암호화라고도 함

 

 

 
 
100.프로젝트 일정 관리 시 사용하는 PERT 차트에 대한 설명에 해당하는 것은?
  • 1)각 작업들이 언제 시작하고 언제 종료되는지에 대한 일정을 막대 도표를 이용하여 표시한다.
  • 2)시간선(Time-Line) 차트라고도 한다.
  • 3)수평 막대의 길이는 각 작업의 기간을 나타낸다.
  • 4)작업들 간의 상호 관련성, 결정경로, 경계시간, 자원할당 등을 제시한다.
[정답:4번]
①, ②, ③번은 간트 차트에 대한 설명입니다.
 
728x90