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

런데 분기하는 모습은 다릅니다. 오른쪽처럼 n의 값이 4나 –8이라도                           실행 결과

                   1이나 2가 아니면  3 이 실행됩니다. 왜냐하면 초록색 박스로 표시한                      수를 입력하세요. : 4
                                                                                이것은 3입니다.
                   부분을 삭제하기 전인 [리스트 1]은 아래의 if문 같은 역할을 하기 때
                   문입니다(chap1/if123c.c).

                                                                                         리스트 2
                     if(n == 1)
                       printf("1입니다.\n");   1
                     else if(n == 2)
                       printf("2입니다.\n");   2
                     else if(n == 3)
                       printf("3입니다.\n");   3
                     else
                       ;    /* 공백문(실제로 아무것도 하지 않는 문장) */


                   따라서 [리스트 1]의 프로그램 흐름은 실제로 네 가지로 분기합니다. 실습 1-3의 if문은 구조

                   가 다르므로 네모로 표시한 부분을 생략할 수 없습니다.



                       보충수업 1-5   조건 연산자

                   3개의 피연산자(operand)를 갖는 3항 연산자 ? :를 조건 연산자(conditional operator)라 합니다. 조
                   건식(conditional expression)의 평가를 정리한 것이 그림 1C-5입니다.


                   예를 들어,


                     min = a < b ? a : b;



                   에서 변수 min에 대입되는 값은 a가 b보다 작으면 a 값, 그렇지 않으면 b 값입니다.


                    조건식                                 a  a가 29, b가 52인 경우
                                                           a < b ? a : b    int  29
                                    식1   ?   식2   :   식3
                                                                      이 식의 결과가 선택됩니다.
                    을 평가한 값은 아래와 같습니다.
                    우선 식1을 평가하여 그 값이                    b  a가 31, b가 15인 경우
                     a  true면 식2의 결과값이 선택됩니다.
                                                           a < b ? a : b    int  15
                     b  false면 식3의 결과값이 선택됩니다.
                                                                      이 식의 결과가 선택됩니다.
                                             [그림 1C-5] 조건식의 평가



                   24   C 알고리즘
   19   20   21   22   23   24   25   26   27   28   29