정보처리기사 실기) 정보처리기사 실기 예상문제 (421~440)
본문 바로가기
정보처리기사/정보처리기사 실기 대비 문제

정보처리기사 실기) 정보처리기사 실기 예상문제 (421~440)

by 코딩하는 핑가 2020. 9. 21.
반응형

* 이 글은 수제비 카페 페코페코 예상 문제를 참고로 작성됐습니다.

* 이 글은 수제비 카페 Daily 문제를 참고로 작성됐습니다.

* 이 글은 수제비 카페 약술형 뽀개기를 참고로 작성됐습니다.

cafe.naver.com/soojebi

 

422. 통신을 원하는 두 단말장치가 패킷 교환망을 통해 패킷을 원활히 전달하기 위한 통신 프로토콜로, 고정된 대역폭을 가지며 패킷을 사용해 대용량의 데이터를 분리하여 송신, 결합하여 복원하는 특징을 갖는 프로토콜은 무엇인가?

더보기

정답 : X.25

 

423. 다른 특수한 목적을 갖는 마크업 언어를 만드는데 사용하도록 권장하는 다목적 언어로서, 인터넷 웹페이지를 만드는 HTML을 획기적으로 개선하여, 홈페이지 구축기능, 검색 기능 등이 향상되었고 웹 페이지의 추가와 작성을 용이하게 만든 언어는 무엇인가? 

더보기

정답 : XML(eXtensible Markup Language)

 

424. 다음 특징을 지닌 저작권 표현 언어는 무엇인가? 

- 콘텐츠 및 서비스의 신뢰를 확보하기 위한 디지털 저작권 관리(DRM) 생성 언어

- 디지털 콘텐츠 / 웹 서비스 권리 조건을 표현한 XML기반의 마크업 언어

- 모든 자원과 관련된 권리 및 조건들을 보안적으로 규정하고 관리하는 일반적인 방법을 제공함

- 리스프(LISP) 기반의 DRM 언어인 디지털 저작권 언어(DPRL)을 개발한 제네록스사와 마이크로소프트사가 이를 개정하여 발표한 언어

더보기

정답 : XrML(eXtensible right Markup Language)

 

425. 웹 페이지에 악의적인 스크립트를 포함해 사용자 측에서 실행되게 유도하는 방법으로, 검증되지 않은 외부 입력이 동적 웹페이지 생성에 사용될 경우 전송된 동적 웹페이지를 열람하는 접속자의 권한으로 부적절한 스크립트가 수행되어 정보 유출 등의 공격을 유발할 수 있는 취약점 공격 기법은 무엇인가? 

더보기

정답 : XSS공격(Cross Site Scripting, 크로스 사이트 스크립팅) 

 

426. 자바(jUnit), C++(cppUnit), .Net(nUnit) 등 다양한 언어를 지원하는 단위 테스트 프레임워크로, 소프트웨어의 함수나 클래스 같은 서로 다른 구성 원소(단위)를 테스트할 수 있게 해주는 도구는 무엇인가? 

더보기

정답 : xUNit

 

427. 다음은 성적 테이블이다. IN 키워드를 이용하여 '컴퓨터 구조'와 '알고리즘' 과목에 대한 학번 별 평균 학점을 구하는 쿼리를 작성하시오.

<성적> 테이블

학번 과목 학점
2001
2001
2002
2003
2003
컴퓨터 구조
운영체제
알고리즘
컴퓨터 구조
알고리즘
4.5
4.0
4.5
3.5
2.5

<결과>

학번 평균
2001
2002
2003
4.5
4.5
3.0
더보기

정답

SELECT 학번, AVG(학점) as 평균

FROM 성적

WHERE 과목 IN ('컴퓨터 구조', '알고리즘')

GROUP BY 학번;

 

428. 다음은 성적 테이블이다. '컴퓨터 구조' 과목을 수강한 사람의 학번과 학점을 학점 순(오름차순)으로 정렬하는 쿼리를 작성하시오.

<성적> 테이블

학번 과목 학점
2001
2001
2002
2003
2003
컴퓨터 구조
운영체제
알고리즘
컴퓨터 구조
알고리즘
4.5
4.0
4.5
3.5
2.5
더보기

정답

SELECT 학번, 학점

FROM 성적

WHERE 과목 = '컴퓨터 구조'

ORDER BY 학점 ASC;

 

429. 다음 프로그램의 실행 결과를 쓰시오. (Python)

string="Hello World"    
m=string[0:3] + string[-3:]       
print(m)   
더보기

정답 : Helrld

#"Hello World" 문자열을 string 변수에 저장한다
>>>string="Hello World"    

"""
string[0:3] 에서 "Hel" 
string[-3:]에서 "rld" 를 가져와서 
'+' 연산자에서 두 문자열을 합친 결과를 m에 저장
"""
>>>m=string[0:3] + string[-3:]                                                 
                                           
#결과 출력
>>>print(m) 

해설

string[3:] : 3번째 부터 끝까지 부분 문자열을 반환한다.

string[0:3] : 처음부터 3번째까지 반환한다.

string[:] : 처음부터 끝까지 전부 반환 한다.

string[-3:] : 문자열의 끝에서 역방향 3번째까지 반환한다.

 

430. 다음은 C언어 소스 코드이다. 출력 결과를 쓰시오.

#include <stdio.h>

void main(){

   int a = 3, b = 4;

   int ret = 0;

   ret = a>b? a: b;

   switch(ret){
   case 0: printf("A");
   case 4: printf("B");
   case 3: printf("C");
   case 7: printf("D");
   default: printf("E");
   }
}
더보기

정답 : BCDE

해설

- 삼항 연산자 문법

: 조건 ? 참일 때 값 : 거짓일 때 값;

 

431. 다음이 설명하는 용어를 쓰시오.

(1) 물리적인 사물과 컴퓨터에 동일하게 표현되는 가상 모델로 실제 물리적인 자산 대신 소프트웨어로 가상화함으로써 실제 자산의 특성에 대한 정확한 정보를 얻을 수 있고, 자산 최적화, 돌발사고 최소화, 생산성 증가 등 설계부터 제조, 서비스에 이르는 모든 과정의 효율성을 향상시킬 수 있는 모델

(2) 가상 물리시스템으로 인간의 개입 없이 대규모 센서/엑추에이터를 갖는 물리적인 요소들과 통신기술, 응용/시스템 소프트웨어 기술을 활용하여 실시간으로 물리적 요소들을 제어하는 컴퓨팅 요소가 결합된 복합 시스템

더보기

정답 : (1) 디지털 트윈(digital twin) (2) CPS(Cyber-Physical System)

 

432. 다음은 C언어 코드이다. 출력 결과를 쓰시오.

#include <stdio.h>

void main(){

  int i=1;

  for( ; i<10; ){

    switch(i%2){

    case 0 : printf("짝수: %d\n", i); break;

    default : printf("홀수: %d\n", i);

    }

    i+=3;

  }

}
더보기

정답

홀수: 1

짝수: 4

홀수: 7

 

해설

for문은 for(초기값; 조건; 증감) 이렇게 구성되어야 하는데, 초기값과 증감값은 생략할 수 있습니다. 대신에 초기값은 int i=1; 부분이 그 역할을 하고, i+=3;이라는 문장이 증감의 역할을 합니다.

코드 자체가 어려운 것은 아닌데, for문에 세미콜론(;)으로만 구분되어 있고, 빈칸으로 되어 있는게 어색할 수 있을 것 같아 이런 코드도 있다는 의미로 출제해보았습니다.

추가로 아래 코드와 기능이 동일합니다.

#include <stdio.h>

void main(){
  int i=1;
  for(i=1; i<10; i+=3){
    switch(i%2){
    case 0 : printf("짝수: %d\n", i); break;
    default : printf("홀수: %d\n", i);
    }
  }
}

 

433. 다음은 성적 테이블이다. 과목만 출력하는 쿼리를 작성하시오.(단, 과목이 중복되지 않도록 한다.)

<성적> 테이블

학번 과목 학점
2001
2001
2002
2003
2003
컴퓨터 구조
운영체제
알고리즘
컴퓨터 구조
알고리즘
4.5
4.0
4.5
3.5
2.5
더보기

정답

SELECT DISTINCT 과목

FROM 성적;

 

434. 다음은 C언어 소스코드이다. 다음 조건에 맞도록 밑줄친 부분의 코드를 작성하시오.

짝수이면서 10보다 큰 수가 입력되면 Here가 출력되도록 작성하시오.

#include <stdio.h>

void main(){

  int a;

  scanf("%d", &a);

  if(____________){

    printf("Here");

  }

}
더보기

정답 : a % 2 == 0 && a > 10

 

435. 다음 파이썬 프로그램 실행 결과를 쓰시오

print(2**3) 
( ① ) # 1
print(3**2) 
( ② ) # 2
더보기

정답 : ① 8 ② 9

해설

# 2의 3승을 출력한다
>>>print(2**3) 
( ① ) 

#3의 2승을 출력한다
>>>print(3**2) 
( ② )

 

* 약술형 문제

 

436. 동등 분할 테스트(Equivalence Partitioning Test) 개념 설명

더보기

답안 : 동등 분할 테스트는 입력 데이터의 영역을 유사한 도메인별로 유효 값/무효 값을 그룹핑하여 대표 값을 테스트 케이스로 도출하여 테스트하는 기법이다.

 

437. 테스트 오라클(Test Oracle) 개념 설명

더보기

답안 : 테스트를 수행한 결과가 참인지 거짓인지를 판단하기 위해서 미리 정의된 참 값을 대입하여 비교하는 기법이다.

* 테스트 오라클은 테스트 수행 결과를 검증하는 기법

 

438. 개념 설명

1. 파티셔닝(Partitioning) 

더보기

답안 : 대용량의 데이터베이스를 파티션(Partition)이라는 보다 작은 단위로 분할함으로써 관리 용이성, 성능 향상, 가용성 등을 용이하게 하는 기술

2. 테일러링(Tailering)

더보기

답안 : 테일러링은 프로젝트의 특성과 필요에 따라 소프트웨어 개발 프로세스, 기법, 산출물 등을 비즈니스적으로 또는 기술적인 요구에 맞도록 최적화하는 과정 및 방법론이다.

 

439. 개념 설명

1. CSRF(Cross-Site Request Forgery) 

더보기

답안 : CSRF는 공격자가 웹 서버의 취약점을 이용하여 악성 스크립트 구문을 삽입하고, 정상적인 사용자로 하여금 자신의 의지와는 무관하게 게시판 설정 변경, 회원 정보 변경 등 공격자가 의도한 행위를 특정 웹사이트에 요청하게 하는 공격이다.

참고

XSS는 사용자가 악의적인 스크립트를 실행 했을 때 피해를 입는것이고,
CSRF는 인가자(정상적인사용자)의 권한으로 실행하여 서퍼에 피해를 입히는 것

2. 시맨틱 웹(Semantic Web)

더보기

답안 : 인터넷과 같은 분산환경에서 리소스에 대한 정보와 자원 사이의 관계-의미 정보를 기계(컴퓨터)가 처리할 수 있는 온톨로지 형태로 표현하고, 이를 자동화된 기계(컴퓨터)가 처리하도록 하는 지능형 웹이다.

3. 온톨로지(Ontology)

더보기

답안 : 실세계에 존재하는 모든 개념들과 개념들의 속성, 그리고 개념들 간의 관계 정보를 컴퓨터가 이해할 수 있도록 서술해 놓은 개념화 명세서 (개정 전 기출)

4. 살충제 패러독스(Pesticide Paradox)

더보기

답안 : 살충제 패러독스는 동일한 테스트 케이스로 반복적인 테스트를 수행하면 더 이상 결함을 발견할 수 없다는 테스트의 원리이다.

5. 티어드롭(Teardrop)

더보기

답안 : 티어드롭(Teardrop)은 IP 패킷의 재조합 과정에서 잘못된 Fragment Offset 정보로 인해 타겟 시스템이 단편화된 패킷의 재조합 과정에서 문제를 발생하도록 만드는 Dos 공격이다.

 

440. 개념 설명

1. 프로시저(Procedure)

더보기

답안 : 프로시저는 일련의 SQL 쿼리의 집합으로 마치 하나의 함수처럼 쿼리의 집합을 실행하여 데이터를 조작하는 프로그램이다.

2. 트리거(Trigger)

더보기

답안 : 트리거는 특정 테이블에 삽입, 수정, 삭제 등의 데이터 변경 이벤트가 발생 시 DBMS에서 자동적으로 실행되도록 구현된 프로그램이다.

3. 트랜잭션(Transaction)

더보기

답안 : 데이터베이스 관리 시스템 또는 유사한 시스템에서 하나의 논리적 기능을 정상적으로 수행하기 위한 작업의 기본 단위이자 한꺼번에 모두 수행되어야 할 일련의 연산이다.

4. 병행 제어(Concurrency Control)

더보기

답안 : 병행제어란 동시에 여러개의 트랜잭션을 수행할 때, 데이터베이스의 일관성 유지를 위해서 트랜잭션 간의 상호 작용을 제어하는 기법이다.

5. 로킹(Locking) 기법

더보기

정답 : 로킹기법이란 하나의 트랜잭션이 데이터를 액세스하는 동안, 다른 트랜잭션이 그 데이터 항목을 액세스할 수 없도록 하는 제어하는 기법이다.

해설

- 로킹은 대표적인 동시성제어기법 / 로킹은 고립성을 보장하기 위한 기법

6. 정규화(Normalization)

더보기

답안 : 관계형 데이터베이스의 설계에서 중복 최소화될 수 있도록 데이터를 구조화하여, 각 릴레이션에서 이상현상이 생기지 않도록 하는 데이터 모델링 기법이다.

 

반응형

댓글