01 파일처리 ■ 파일 처리 개념 간단한 프로그램에서는 데이터를 입력받거나 출력할 경우에 표준 입출력 장치인 키보드와 모니터를 이용하여 처리한다. 이러한 데이터 처리는 그 작업이 컴퓨터의 주기억장치에서 이루어지기 때문에 프로그램의 실행을 종료할 경우에 입력한 데이터나 출력결과가 모두 지워져 버린다. 이와 같이 프로그램 종료 후에도 파일 입출력에 사용되는 데이터가 지워지는 것을 방지하기 위해 C에서 제공하는 파일처리 함수를 이용하여 입력 데이터를 디스크로부터 읽어 오거나 출력 데이터를 디스크로 저장하는 것을 파일처리라 한다. 파일처리는 많은 양의 입력 데이터와 출력 데이터를 보존해야 할 경우에 편리하게 사용된다. 이러한 파일처리는 다음과 같은 처리 절차를 통하여 이루어진다. 파일 포인터 선언 → 파일 열기..
■ 구조체란? 책 대여점에서 책 재고관리를 하기 위한 프로그램을 작성한다고 생각해보자, 각각의 책에 대하여 분류번호, 책 제목, 저자, 구입가격, 출판일자, 대여 횟수 등 수많은 정보가 필요하게 된다. 그러나 각각의 데이터들은 데이터형이 같지 않아 서로 다른 데이터형으로 정의하고 따로따로 배열로 저장할 수 밖에 없다. 하지만 하나의 배열을 사용하여 배열의 각 원소가 하나의 책에 대한 모든 정보를 갖게 되면 재고관리가 쉬어질 것이다. 구조체는 서로 다른 데이터형의 자료들을 묶음으로 처리하고자 할 때 사용하는 자료 형태이며, 구조체에서 사용되는 각각의 구성원을 구조체 구성원이라 한다. 일반적인 데이터 구조와 C언어에서의 데이터 구조를 살펴보면 일반적인 데이터 구조의 레코드에 해당되는 것이 구조체이며, 필드에..
01 포인터 및 포인터 변수 ■ 포인터(pointer)란? 포인터란 데이터가 기억되어 있는 기억 장소의 전지를 나타내는 주소 값을 의미한다. 우리가 변수를 선언하면 컴퓨터는 변수의 데이터형에 맞는 메모리 크기를 잡게 된다. 이때 할당된 메모리의 위치는 주소값을 갖게 되는 데 이 주소값을 포인터라 한다. 참고) 포인터 사용의 특징- C 언어이 가장 큰 특징의 하나로 메모리의 데이터를 쉽게 접근하여 이용할 수 있다.- 잘못 사용 시 난해한 프로그램이 된다.- 배열을 포인터를 이용하여 효율적으로 사용할 수 있다. ■ 포인터 변수 주소를 값으로 갖는 변수를 의미한다. 일반적인 변수는 변수의 값으로 정수, 상수 등을 저장할 수 있으나 주소값을 저장할 수 는 없다. 이러한 주소를 저장할 경우에 사용하는 것이 포인터..
04 재귀적 함수 재귀적 (recursive) 함수는 함수 실행 중간에 자기 자신 (실행되고 있는 함수) 을 또 호출하는 함수를 말한다.재귀적 함수는 어떠한 조건이 만족될 때까지 반복하여 자신을 호출하게 되므로, 재귀적 호출을 중단하게 하는 조건이 반드시 있어야 한다.함수의 호출시 프로그램 상태 (state) 를 보존하고, 자료의 일부를 피 호출함수에 전달하고, 피 호출함수의 종료와 더불어 호출 함수로 되돌아오는 과정을 반복하기 때문에 제귀적 함수를 처리하기 위하여 스택을 이용한다.대표적인 예로는 팩토리얼 (factorial) 을 들 수 있다.실습 7_14_a).cpp#include void rec_fun(int n) { int i; for(i=0;i0) { rec_fun(n-1); printf("%3d..
■ C언어는 여러 개의 함수들로 이루어진 형태임■ 함수라는 것은 프로그램 내에서 특정한 기능을 수행하도록 작성된 독립적인 모듈을 말함 ■ main() 함수는 항상 포함하여야 하며, 필요에 따라 서브 함수를 사용 ■ 프로그램 중 일정한 루틴을 많이 사용할 경우 별도의 처리루틴 작성 ■ 프로그램을 기능별로 함수로 작성하여 처리 ■ 함수를 이용함으로써 프로그램을 이해하고 수정하기 쉬운 구조적 프로그래밍 가능 ■ 함수의 종류에는 매크로 함수, 내장함수, 사용자 정의 함수 등이 있음 ■ 프로그램을 이해하고 수정하기 쉽고 구조적 프로그래밍이 가능하게 함 01 매크로 함수 매크로 함수는 프로그램 내에서 1개 이상의 문장으로 이루어진 프로그램의 한블록이 프로그램 곳곳에 반복적으로 쓰일 때, 이러한 프로그램 작성상의 불..