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

실습 1C-1                                                  •완성 파일 chap01/med3.c
                         01  /* 세 정수의 값을 입력하고 중앙값을 구합니다. */                          실행 결과
                         02  #include <stdio.h>
                                                                               세 정수의 중앙값을 구합니다.
                         03
                                                                               a의 값 : 1
                         04  /*--- a, b, c의 중앙값을 구합니다. ---*/                   b의 값 : 3
                         05  int med3(int a, int b, int c)                     c의 값 : 2
                         06  {                                                 중앙값은 2입니다.
                         07    if(a >= b)
                         08      if(b >= c)
                         09        return b;   A    b    F    G
                         10      else if(a <= c)
                         11        return a;   D    E    H
                         12      else
                         13        return c;   C
                         14    else if(a > c)
                         15      return a;     I
                         16    else if(b > c)
                         17      return c;     J    K
                         18    else
                         19      return b;     L   M
                         20  }
                         21
                         22  int main(void)
                         23  {
                         24    int a, b, c;
                         25
                         26    printf("세 정수의 중앙값을 구합니다.\n");
                         27    printf("a의 값 : "); scanf("%d", &a);
                         28    printf("b의 값 : "); scanf("%d", &b);
                         29    printf("c의 값 : "); scanf("%d", &c);
                         30
                         31    printf("중앙값은 %d입니다.\n", med3(a, b, c));
                         32
                         33    return 0;
                         34  }


                        세 값의 중앙값을 구하는 절차는 ‘퀵 정렬(Quicksort)’의 알고리즘 개선(06장)에서도 이용합니다.












                                                                                      01•기본 알고리즘  21
   16   17   18   19   20   21   22   23   24   25   26