Page 140 - Do it! 자료구조와 함께 배우는 알고리즘(C 언어, 3쇄)
P. 140

종료 함수 Terminate

                   Terminate 함수는 뒤처리를 담당하는 함수입니다. Initialize 함수로 확보한 스택을 해제하
                   고 용량 max와 스택 포인터 ptr의 값을 0으로 합니다.


                   스택을 사용하는 프로그램

                   스택을 사용하는 프로그램을 만들어 보겠습니다. 프로그램 예를 실습 4-3에 나타냈습니다.
                      이 프로그램을 컴파일하려면 IntStack.h, IntStack.c가 필요합니다.


                      실습 4-3                                             •완성 파일 chap04/IntStackTest.c

                     01  /* int형 스택 IntStack의 사용 */
                     02  #include <stdio.h>
                     03  #include "IntStack.h"
                     04
                     05  int main(void)
                     06  {
                     07    IntStack s;
                     08    if(Initialize(&s, 64) == -1) {
                     09       puts("스택 생성에 실패하였습니다.");
                     10      return 1;
                     11    }
                     12
                     13    while(1) {
                     14      int menu, x;
                     15      printf("현재 데이터 수 : %d / %d\n", Size(&s), Capacity(&s));
                     16      printf("(1)푸시 (2)팝 (3)피크 (4)출력 (0)종료 : ");
                     17      scanf("%d", &menu);
                     18
                     19      if(menu == 0) break;
                     20      switch(menu) {
                     21      case 1 : /*--- 푸시---*/
                     22        printf("데이터 : ");
                     23        scanf("%d", &x);
                     24        if(Push(&s, x) == -1)
                     25          puts("\a오류 : 푸시에 실패하였습니다.");
                     26        break;
                     27
                     28      case 2 : /*--- 팝 ---*/
                     29        if(Pop(&s, &x) == -1)
                     30          puts("\a오류 : 팝에 실패하였습니다.");
                     31        else


                   140   C 알고리즘
   135   136   137   138   139   140   141   142   143   144   145