CS/정보처리산업기사 27

프로그래밍 언어의 개요 - C언어 사용자 정의 함수

01. 부 프로그램1) 개념부 프로그램은 주 프로그램이나 다른 부 프로그램에서 사용되는 독립된 형태의 단위 프로그램이다.C언어에서는 사용자 정의 함수를 통해 필요한 기능을 독립적인 단위로 구현하여 사용할 수 있도록 정의한 후 호출하여 사용한다.2) 특징부 프로그램을 선언할 때 부 프로그램의 이름, 부 프로그램의 존재를 나타내는 키워드, 부 프로그램의 인자, 반환값, 부 프로그램에서 수행하는 기능이 필요하다.부 프로그램을 사용하면 프로그램의 크기가 줄어들고, 프로그램 수정이나 관리가 편리하다.두 모듈이 같이 실행되면서 서로 홈출하는 형태를 코루틴이라고 한다.3) 프로그램 간의 자료 전달 방법전역 변수를 사용하여 부 프로그램 간 공유 변수를 사용한다.전역 변수 사용시 프로그램을 이해하기 상대적으로 어렵고 모..

프로그래밍 언어의 개요 - C언어 포인터

01. C언어 포인터의 개요1) 개념포인터는 객체에 대한 참조하는 다른 객체를 가리키는 자료형이다.고급 언어에서 사용되는 기법이다.C언어에서는 포인터 연산자를 통해 명시적으로 참조상황을 표현할 수 있다.Java언어에는 포인터 연산자가 존재하지 않는다.2) 특징객체를 참조하기 위해 주소를 값으로 하느 자료형이다.커다란 배열에 원소르 효율적으로 저장할 때 이용된다.하나의 자료에 동시에 많은 리스트의 연결이 가능하다.C/C++에서 포인터 변수를 선언할 때는 포인터 연산자(*)를 이용하여 선언한다.02. 포인터 변수의 선언과 대입포인터 변수는 변수값으로 메모리의 주소값을 갖는다.포인터 변수의 선언문 int* p; 또는 int *p;03. 포인터 변수와 관련 연산자&(주소 연산자) : 모든 변수에 대한 주소값을 ..

프로그래밍 언어의 개요 - 배열과 문자열

01. 배열 변수C언어는 배열과 구조체와 같은 사용자 정의 자료형을 제공한다.한 번의 선언으로 여러 개의 메모리 공간을 관리할 수 있다.같은 자료형의 값을 메모리 공간에 순차적으로 하나의 이름으로 모아 놓은 것이다.{ int a[10]; double b[2]; char ch[5];}배열 요소의 범위 : 배열명[0]~배열명[첨자-1]배열의 첨자 : 0부터 시작배열 선언과 동시에 초기화시, 요소의 개수 생략이 가능{ int a[3] = {1, 2, 3}; double b[2] = {1.1, 2.2}; char ch[4] = {'P', 'A', 'S', 'S'}; int a[] = {1, 2, 3}; double b[] = {1.1, 2.2}; char ch[] ..

프로그래밍 언어의 개요 - 제어문(2) - 반복문

01. while문조건식의 결과가 참에 해당하는 동안 명령문을 반복 수행한다.조건식의 결과가 거짓에 해당하면 반복 블록을 수행하지 않는다.조건식이 '항상 참'으로 결과를 생성하거나 1로 명시되어 있으면 무조건 반복에 해당되어 무한반복이 이루어 진다. 이러한 무한반복을 끝내려면 반복할 명령문들 중에 break문을 사용한다.while(조건식){ 반복할 명령문;}조건식이 참일 경우만 블록 영역으로 진입하여 반복할 명령을 수행 후 while문의 헤더의 조건식 판별을 반복하게 된다.블록 영역 내의 수행 문장이 단일 문장일 경우는 블록 기호를 생략할 수 있다.처음부터 조건식이 참일 아닐 경우, 반복할 명령은 한 번도 수행되지 않는다.02. do~while문do { 반복할 명령문;} while(조건식);반복할 문장을..

프로그래밍 언어의 개요 - 데이터 입력 및 출력

01. 데이터 입출력의 개념프로그램을 수행하는 과정에서 메모리로 데이터를 입력하고, 메모리에서 테이터를 출력하도록 하는 것이다.읽기와 쓰기 명령을 이용하여 데이터 전송 요청을 할 수 있다.02. C언어 대표 표준 데이터 입출력 함수C언어에서 표준 입출력 함수를 사용하기 위해서는 #include 전처리를 통해 stdio.h라는 표준 입출력 헤더파일을 코드 상단에 반드시 입력해야만 한다.입력 함수scanf() : 표준 입력 함수getchar() : 문자 입력 함수gets() : 문자열 입력 함수출력 함수printf() : 표준 출력 함수putchar() : 문자 출력 함수puts() : 문자열 출력 함수03. C언어 데이터 입출력 변환문자%d : 정수형 10진수를 입·출력하기 위해 지정함%o : 정수형 8진..

프로그래밍 언어의 개요 - 연산자

01. 연산자와 우선순위자료에 대한 연산동작을 지정한 기호연산자 우선순위란 두 종류 이상의 연산자가 수식내에 포함될 경우 연산의 순서를 의미한다.연산자 결합방향이란 우선 순위가 동일한 연산자들이 수식 내에 포함될 경우 어느방향으로 결합하는가를 결정하는 것이다.02. 이항 연산자의 우선 순위연산자의 대부분은 피연산자를 2개 가지느 이항 연산자에 속한다.이항 연산자의 우선순위는 '산술연산자 -> 관계연산자 -> 논리연산자' 순으로 우선순위가 높다. 즉 괄호가 있지 않으면 우선순위가 높은 연산자부터 처리가 된다.03. 산술 연산자정수 산술 연산자는 정수의 결과값을, 실수 산술 연산은 실수의 결과값을 갖는다.부호를 나타내는 단항 연산자 '+', '-'는 이항 산술 연산자보다 우선수위가 높다.이상 연산자 '+',..

프로그래밍 언어의 개요 - 변수와 상수

01. 상수의 개념항상 고정된 값을 갖는 자료로, 변경 불가능유형 : 정수형, 실수형, 문자형, 문자열형, 논리형수명 시간 동안 고정된 하나의 값과 이름을 가진 자료로서, 프로그램이 동작하는 동안 값이 바꾸지 않는 공간이다.02. C 프로그램의 상수정수형 상수 : 10진수, 8진수, 16진수 표현가능실수형 상수 : 소수 형식, 지수 형식문자형 상수키보드 문자 + escape 문자작은 따옴표로 묶음 1개의 영문자나 숫자문자 혹은 특수문자내부적으로는 ASCII코드값으로 저장문자열형 상수 : 큰 따옴표로 묶은 여러 개의 영문자 및 숫자문자나 특수문자03. 변수변수는 프로그램 실행 중 변경할 수 있는 값이 저장되는 기억공간프로그램에서 하나의 값을 저장할 수 있는 기억 장소의 이름을 의미변수는 이름, 값, 속성,..

프로그래밍 언어의 개요 - 데이터 타입

01. 데이터 타입의 정의자료형이란 변수가 가질 수 있는 데이터의 유형이다.프로그램을 작성 시 자료형을 결정하여 변수를 선언한다.프로그래밍 언어에 따라 데이터 타입에 차이가 있다.02. 데이터 타입의 분류1) 기본 데이터 타입정해진 구조 외에 다른 구조를 가질 수 없는 자료형이다.종류 : 논리형, 문자형, 정수형, 실수형2) 구조적 데이터 타입기본 자료형으로부터 파생하여 만든 자료형이다.종류 : 배열, 레코드, 포인터형, 문자열형03. 기본 데이터 타입1) 논리형(Boolean Type)참값과 거짓값의 상수를 ㅛ현할 때 사용하는 자료형두 상수 값만 존재C언어의 기본 데이터 타입은 아님2) 문자형(Character Type)단일 문자의 자료형작은따옴표로 표현된 상수들을 표현할 때 사용하는 자료형3) 정수형..

애플리케이션 테스트 수행 - 애플리케이션 개발 단계에 따른 테스트

01. SDLC와 테스트 단계소프트웨어 생명 주기는 요구사항, 분석, 디자인, 구현 또는 개발 순으로 진행되며, 프로젝트의 특성과 방법론에 따라 반복적으로 수행하는 경우도 있다.테스트는 단위 테스트, 통합 테스트, 시스템 테스트, 인수 테스트 순으로 진행된다.02. 단위 테스트컴포넌트 테스트라고도 한다.구현 단계에서 각 모듈의 개발을 완료한 후 개발자가 명세서의 내용대로 정확히 구현되었는지 테스트한다.소프트웨어 최소 기능 단위인 모듈, 컴포넌트를 테스트하는 것으로 사용자의 요구사항을 기반으로 한 기능 테스트를 제일 먼저 수행한다.개별 모듈을 시험하는 것으로 모듈이 정확하게 구현되었는지, 예정한 기능이 제대로 수행되는지를 점검하는 것이 주요 목적인 테스트테스트 드라이버를 이용한다.03. 통합 테스트단위 테..

애플리케이션 테스트 수행 - 애플리케이션 테스트

01. 애플리케이션 테스트 개요1) 테스트의 개념소프트웨어 테스트란 구현된 응용 애플리케이션이나 시스템 사용자가 요구하는 기능의 동작과 성능, 사용성, 안정성 등을 만족하는지 확인하기 위하여 소프트웨어의 결함을 찾아내는 활동이다.2) 테스트의 필요성오류 발견오류 예방품질 향상3) 테스트의 기본 원칙(1) 테스팅은 결함을 밝히는 활동이다.테스팅은 소프트웨어의 잠재적인 결함을 줄일 수 있지만, 결함이 발견되지 않아도 결함이 없다고 증명할 수 없음을 나타낸다.(2) 완벽한 테스팅은 불가능하다.무한 경로, 무한 입력 값, 무한 시간이 소요되어 완벽하게 테스트할 수 없으므로 리스크 분석과 우선순위를 토대로 테스트에 집중할 것을 의미한다.(3) 테스팅은 개발 초기에 시작해야 한다.애플리케이션의 개발 단계에 테스트를..