정보처리기사 실기 랜덤

1. 데니스 리치와 켄톰슨 등이 함께 벨 연구소를 통해 만든 운영체제이며, 90% 이상 C언어로 구현되어 있고, 시스템 프로그램이 모듈화되어 있어서 다른 하드웨어 기종으로 쉽게 이식 가능하며 계층적 트리 구조를 가짐으로써 통합적인 파일 관리가 용이한 운영체제는 무엇인가?
위키해설
클릭하면 보입니다.
  유닉스
2. 다음은 Java 코드로 작성한 프로그램이다. 올바른 출력 결과를 작성하시오.

3. 192.168.1.0/24인 네트워크를 FLSM 4개로 분할하였다. 두번째 네트워크 브로드캐스드 IP를 10진수로 변환한 값을 작성하시오.

4. 럼바우 데이터 모델링에 관한 설명으로써, 각 번호에서 설명하는 모델링 기법을 보기에서 찾아서 작성하시오.
(1) 입력값이 출력값일 때 - 예) 자료 흐름도(DFD)
(2) 시간에 따라 변하는 것 - 예) 상태 변화도(DFD)
(3) 구조 - 예) ER다이어그램(ERD)

[보기] Operation, Sequence, Information, Transaction, Function, I/O, Dynamic, Architecture, Cause-Effect, Constraint, Rebuilding, Duration
위키해설
클릭하면 보입니다.
  럼바우 분석 기법
5. 다음 C언어 코드에서 알맞는 출력값을 작성하시오.
#include 
 
int main(int argc, char *argv[]) {
    int a[4] = {0, 2, 4, 8};
    int b[3] = {};
    int i = 1;
    int sum = 0;
    int *p1;
 
    for (i; i < 4; i++) {
        p1 = a + i;
        b[i-1] = *p1 - a[i-1];
        sum = sum + b[i-1] + a[i];
    }
    printf("%d", sum);
 
    return 0;
}
위키해설
클릭하면 보입니다.
  C 언어 포인터
6. 다음은 판매와 관련된 다이어그램이다. 해당 다이어그램의 명칭을 쓰시오.
위키해설
클릭하면 보입니다.
  UML패키지 다이어그램
7. 아래는 C언어의 2차원 배열 형태이다. 결과는 2차원 배열 형태로 출력된다. 출력값을 적으시오.
void main{
 
field {{0,1,0,1},{0,0,0,1},{1,1,1,0},{0,1,1,1}};
mines {{0,0,0,0},{0,0,0,0},{0,0,0,0},{0,0,0,0}}; 
 
int w = 4, h = 4;
  for(y=0; y<h; y++) {
    for(x=0; x<w; x++) {  
    if(field[y][x] == 0) continue;
    
      for(i=y-1; i<=y+1; i++) {
        for(j=x-1; j<=x+1; j++) {
          if(calculate(w,h,j,i) == 1) {
            mines[i][j] += 1;
          }
        }
      }
    }
  }
  for(y=0; y<h; y++){
    for(x=0; x<w; x++)
      printf("%d", mines[y][x]);
      printf("n");
  }
 
}
 
 
int calculate(w,h,j,i) {
  if (i >= 0 && i < h && j >= 0 && j < w) return 1;
  return 0;
}

8. 다음 설명에 대한 괄호안에 알맞는 단어를 작성하시오.
1. ( 괄호 ) 테스트는 하드웨어나 소프트웨어의 개발 단계에서 상용화하기 전에 실시하는 제품 검사 작업. 제품의 결함 여부, 제품으로서의 가치 등을 평가하기 위해 실시한다. 선발된 잠재 고객으로 하여금 일정 기간 무료로 사용하게 한 후에 나타난 여러 가지 오류를 수정, 보완한다. 공식적인 제품으로 발매하기 이전에 최종적으로 실시하는 검사 작업이다.

2. ( 괄호 ) 테스트는 새로운 제품 개발 과정에서 이루어지는 첫 번째 테스트. 즉, 시제품이 운영되는 동안의 신제품 연구와 개발 과정 단계에서 초기 작동의 결과를 평가하는 수단이며 개발 회사 내부에서 이루어지는 테스트로서 단위 테스트, 구성 테스트, 시스템 테스트 등을 포함한다.
위키해설
클릭하면 보입니다.
  베타 테스트알파 테스트
9. 다음 조건을 만족하면서 학과별로 튜플 수가 얼마인지 구하는 SQL문을 작성하시오.
- WHERE 구문을 사용하지 않는다.
- GROUP BY 를 사용한다.
- 별칭(AS)을 사용한다.
- 집계 함수를 사용한다.

[학생]
학과 학생
전기 이순신
컴퓨터 안중근
컴퓨터 윤봉길
전자 이봉창
전자 강우규
[결과]
학과 학과별튜플수
전기 1
컴퓨터 2
전자 2
위키해설
클릭하면 보입니다.
  SQL
10. 다음은 함수 종속성에 대한 설명이다. 해당 문제에 대한 알맞는 답을 보기에서 골라 작성하시오.
75
학생학과성적학년
홍길동무역학과351
홍길동경영학과601
임꺽정컴퓨터학과603
유관순문헌정보학과944
유관순4
1. 성적은 {학생,학과}에 대해서 ( 괄호 ) Functional Dependency이다. 2. 성적은 학과만 알아도 식별이 가능하므로, 이 경우에는 성적 속성은 기본키에 ( 괄호 ) Functional Dependency이다. 3. 릴레이션에서 X, Y, Z라는 3 개의 속성이 있을 때 X→Y, Y→Z 이란 종속 관계가 있을 경우, X→Z가 성립될 경우
위키해설
클릭하면 보입니다.
  함수 종속
11. 다음 설명하는 용어를 보기에 맞게 골라 '기호'를 작성하시오.
[보기]
ㄱ.NFT                            ㄴ.JWT                        
ㄷ.SAML                         ㄹ.accessToken             
ㅁ.SSO                          ㅂ.OIDC            
ㅅ.Autentication               ㅇ. OAuth             
ㅈ.Cookie                       ㅊ.Refresh Token

***************************************************************************************
- 사용자가 사용자 이름 및 암호와 같은 자격 증명을 공유하지 않고도 타사 애플리케이션이 데이터 또는 리소스에 액세스할 수 있도록 권한을 부여할 수 있는 개방형 표준 프로토콜이다.

- 사용자가 데이터에 대한 제어를 유지하면서 리소스에 대한 액세스 권한을 부여할 수 있는 안전하고 표준화된 방법을 제공하며, 액세스 토큰을 사용하여 타사 애플리케이션에 리소스에 대한 액세스 권한을 부여하는 메커니즘을 사용자에게 제공하는 방식으로 작동한다.

- 사용자가 응용 프로그램에 대한 액세스 권한을 부여하면 응용 프로그램은 사용자를 대신하여 사용자의 리소스 또는 데이터에 액세스하는 데 사용할 수 있는 액세스 토큰을 받는다.

- 암호와 같은 사용자의 자격 증명은 타사 응용 프로그램과 공유되지 않으며, 클라우드 스토리지 서비스, 온라인 마켓 플레이스 및 금융 서비스를 포함한 다른 많은 응용 프로그램 및 서비스에서도 사용된다.

- Facebook, Twitter 및 LinkedIn과 같은 소셜 미디어 플랫폼에서 널리 사용되어 사용자가 소셜 미디어 데이터에 대한 액세스 권한을 타사 애플리케이션에 부여할 수 있도록 한다.

- 타사 애플리케이션에 대한 사용자 자격 증명의 노출을 최소화하여 향상된 보안, 간소화된 애플리케이션 개발, 사용자가 리소스에 대한 액세스 권한을 쉽게 부여하거나 취소할 수 있도록 하여 향상된 사용자 환경 등 여러 가지 이점을 제공한다.
위키해설
클릭하면 보입니다.
  OAuth
12. 다음에서 설명하는 개발방법론은 무엇인지 적으시오.
고객의 요구사항 변화에 유연하게 대응하기 위해 일정한 주기를 반복하면서 개발하며 고객에게 시제품을 지속적으로 제공하며 고객의 요구사항이 정확하게 반영되고 있는지 점검한다. 폭포수 모형에 대비되는 유연한 방법론으로 비교적 소규모 개발 프로젝트에서 각광받고 있는 개발 방법론이다.
위키해설
클릭하면 보입니다.
  애자일 방법론소프트웨어 개발 방법론
13. 다음 JAVA 코드의 실행 결과를 적으시오.
public class ovr1 {
	public static void main(String[] args){
    	ovr a1 = new ovr1();
        ovr a2 = new ovr2();
        System.out.println(a1.sun(3,2) + a2.sun(3,2));
    }
    
    int sun(int x, int y){
    	return x + y;
    }
}

class ovr2 extends ovr1 {
	int sun(int x, int y){
    	return x - y + super.sun(x,y);
    }
}

14. 다음은 테스트 커버리지에 대한 내용이다. 내용을 보고 보기에 알맞는 '기호' 를 고르시오
- 프로그램 내에 있는 결정포인트 내의 모든 각 개별 조건식에 대한 모든 가능한 결과 (참/거짓)에 대해 적어도 한번 수행한다.

- 소프트웨어 테스트 수행 시 소스코드를 어느 수준까지 수행하였는가 를 나타내는 기준을 나타낸다.

- 실제 업무에서는 다양한 툴을 사용하여 테스팅 수행한다.

- True/False에 충분한 영향을 줄 수 없는 경우가 발생 가능한 한계점을 지닌다.

***************************************************************************************
[보기]
ㄱ. 구문 커버리지  
ㄴ. 경로 커버리지  
ㄷ. 조건/결정 커버리지   
ㄹ. 변형 조건/결정 커버리지  
ㅂ. 다중 조건 커버리지  
ㅅ. 결정 커버리지  
ㅇ. 조건 커버리지
위키해설
클릭하면 보입니다.
  소프트웨어 테스트 커버리지
16. 다음은 자바 소스 코드이다. 출력 결과를 보고 괄호 A, B에 알맞은 값을 적으시오.
public class good {
    public static void main(String[] args) {
    int[][]a = new int[( 괄호A )][( 괄호B )];
    for(int i = 0; i < 3; i++){
        for(int j=0; j < 5; j++){
        a[i][j] = j*3+(i+1);
        System.out.print(a[i][j]+"");
      }
      System.out.println();
      }
   }
} 
[출력 결과] 1 4 7 10 13 2 5 8 11 14 3 6 9 12 15

17. 점수에 따른 성적 부여가 잘 되었는지 테스트하고자 한다. 아래에 알맞는 테스트 기법은 무엇인가?
점수 성적
0 ~ 59
60 ~ 69
70 ~ 79
80 ~ 89
90 ~ 100
[테스트 값] : -10점 / 30점 / 65점 / 75점 / 85점 / 95점 / 110점
위키해설
클릭하면 보입니다.
  동치 분할 테스트블랙박스 테스트
18. 아래 코드에 대한 출력 값을 작성하시오.
void main{
 
int []result = int[5];
int []arr = [77,32,10,99,50];
 
  for(int i = 0; i < 5; i++) {
    result[i] = 1;
    for(int j = 0; j < 5; j++) {
      if(arr[i] <arr[j]) result[i]++;
    }
  }
 
  for(int k = 0; k < 5; k++) {
    printf(result[k]);
  }
}

19. 다음은 결합도에 대한 설명이다. 빈칸에 들어갈 알맞은 용어를 보기에서 찾아 쓰시오.
(  A  ) 은/는 다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용하는 경우의 결합도
(  B  ) 은/는 모듈 간의 인터페이스로 배열이나 객체, 구조 등이 전달되는 경우의 결합도
(  C  ) 은/는 파라미터가 아닌 모듈 밖에 선언된 전역 변수를 참조하고 전역 변수를 갱신하는 식으로 상호작용하는 경우의 결합도

[보기] : 자료 결합도 / 스탬프 결합도 / 제어 결합도 / 공통 결합도 / 내용 결합도 / 외부 결합도
위키해설
클릭하면 보입니다.
  결합도모듈화
20. 다음 아래 코드에서 이진수를 십진수로 변환하는 코드에 대해 괄호 (a) (b)의 적합한 답을 작성하시오.
#include 
 
int main() { 
    int input = 101110;
    int di = 1;
    int sum = 0;
 
    while (1) {
 
        if (input == 0) break;
        else {
 
          sum = sum + (input (a)(b)) * di;
             di = di * 2;
             input = input / 10; 
        }
    }
 
    printf("%d", sum);
 
    return 0;
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
채점하기
hide
reset
타이머

모든 문제들의 저작권은 원저작권자에게 있습니다. 본 사이트는 웹상에 공개되어 있는 문제만 모아서 보여드립니다.
저작권 안내   데이터 보호 안내   제휴 문의

copyright 2025 뉴비티::새로운 CBT 시스템 - newbt.kr