Note

[정보처리기사] 2021년 정보처리기사 3회 실기 기출

Supreme_YS 2021. 10. 18. 15:12

실제 문제 순서는 본 포스팅의 순서와 다르니, 이 점 참고하시길 바랍니다. 


1.

class Connection {
    private static Connection _inst = null;
    private int count = 0;

    static public Connection get() {
        if (_inst == null) {
            _inst = new Connection();
            return _inst;
        }
        return _inst;
    }

    public void count() {
        count++;
    }

    public int getCount() {
        return count;
    }
}

public class Testcon {
    public static void main(String[] args) {
        Connection conn1 = Connection.get();
        conn1.count();

        Connection conn2 = Connection.get();
        conn2.count();

        Connection conn3 = Connection.get();
        conn3.count();

        System.out.print(conn1.getCount()); // conn2, conn3의 출력값은 같다.
    }
}

 

정답 : 3


2. 3A 문제, 보기에서 찾아 쓰시오
1. 접근 시도하는 가입자 또는 단말 식별
2. 가입자나 단말에 권한 부여
3. 사용시간, 정보, 위치 등 정보 수집

 

정답 : Authentication/Authorization/Accounting


3. DCL의 GRANT의 기능을 약술하시오.

정답 : 사용자에게 권한을 부여하는 명령어


4. 스푸핑의 한 종류로써 IP 주소가 아닌 MAC 주소(물리적 주소)를 속이는 공격 기법

정답 : ARP 스푸핑


5. Coupling의 한 종류로서 단순 처리할 대상인 값만 전달되는 게 아니라 어떻게 처리를 해야 한다는 제어 요소가 전달되는 경우의 결합도는? 영문으로 쓰시오

정답 : Control


6. OSI 7 Layer

- 직접적으로 연결된 두 개의 노드 사이에 데이터 전송을 가능하게 하고, 오류를 수정하기도 함
- 경로에 따라 무결성있는 패킷 정보를 전달
- 압축데이터 전달하며, 다양한 표현

정답 : 데이터링크 계층, 네트워크 계층, 표현 계층


7. 추상화에 대한 설명, 관계, 집합에 대한 용어, 보기에서 찾아 쓰시오

정답 : Aggregation, Generalization


8. 테스트케이스 구성 요소, 보기에서 찾아 쓰시오

정답 : 테스트 조건, 테스트 데이터, 예상 결과


9. 그래프를 활용하여 입력 데이터 간의 관계 및 출력에 미치는 영향을 분석하여 효용성이 높은 테스트 케이스를 선정하여 테스트하는 기법, 보기에서 찾아 쓰시오, 영문으로 기술

정답 : Cause-Effect Graph


10. 블록 크기는 64bit, 키 길이는 56bit, 16 라운드 암호화/IBM에서 개발, 영문 약어로 기술

정답 : DES


11.

public class Testcode {
    public static void main(String[] args) {
        int a = 3, b = 4, c = 3, d = 5;

        if((a == 2 | a == c) & !(c > d) & (1 == b ^ c != d)) {
            a = b + c;

            if(7 == b ^ c != a) {
                System.out.println(a);
            } else {
                System.out.println(b);
            }
        } else {
            a = c + d;

            if(7 == c ^ d != a) {
                System.out.println(a);
            } else {
                System.out.println(d);
            }
        }
    }
}

정답 : 7


12.

#include <stdio.h>
  
int main(){
        int *arr[3];
        int a = 12, b = 24, c = 36;
        arr[0] = &a;
        arr[1] = &b;
        arr[2] = &c;

        printf("%d\n", *arr[1] + **arr + 1);

}

정답 : 37


13. 다음 SQL문의 실행 결과를 쓰시오.

SELECT COUNT(*) CNT FROM A CROSS JOIN B WHERE A.NAME LIKE B.RULE ;

[TABLE A]

NAME
SMITH
ALLEN
SCOTT

[TABLE B]

RULE
S%
%T%

[RESULT TABLE]

CNT
4

14. 다음은 파이썬 코드이다. 출력 결과를 쓰시오.

a,b = 100, 200
print(a==b)

정답 : False (대소문자 구분, false 오답)


15. UML 다이어그램의 한 종류로써 속성, 메소드를 포함하는 다이어그램

정답 : 클래스


16. 상위 클래스에서 인터페이스만 정의하고 실제 생성은 서브클래스가 담당하는 디자인 패턴을 보기에서 찾아 적으시오.

정답 : Factory Method


17. C언어 실행결과

#include<stdio.h>
struct src {
    char name[12];
    int os, db, hab, hhab;
};
int main()
{
    struct src st[3] = {{"가", 95, 88}, {"나", 84, 91}, {"다", 86, 75}};
    struct src* p;
    p = &st[0];
    (p+1)->hab = (p+1)->os + (p+2)->db;
    (p+1)->hhab = (p+1)->hab + p->os + p->db;
    printf("%d", (p+1)->hab + (p+1)->hhab);
}

정답 : 501


18. 데이터 접근 방식 중 하나이며 <값, 주소> 자료구조, 파일의 구조에는 순차, (정답), 해싱이 있다.

정답 : 인덱스


19.  사용자가 키보드, 마우스 등을 이용한 사용자 인터페이스로 윈도우, 맥킨토시 등이 있다.

정답 : GUI


20. (a) 테스트 방식은 이름 그대로 최하위 모듈부터 위로 (a) 테스트하는 방식이고, 하위 모듈을 통합하는 (b)가 필요하다.

정답 : a - 상향식 통합, b - 테스트 드라이버