나미/C

16. 제어문 - 복합문, 선택문

규남 2013. 3. 14. 17:17
반응형

복합문의 의미

여러 개의 명령문을 묶어서 하나의 실행단위로 만들기 위해서 사용한다. 사용방법은 { }로 묶어서 사용한다.

 

선택문의 의미

말그대로 소스를 작성하다보면 내가 선택해서 필요한 부분만 사용을 해야하는 경우가 종종 발생한다. 그래서 선택문을 이용하여 필요한 값을 불러오기 위해 사용한다.

 

if문

선택문 중에서 가장 간단한 형태로써, 주어진 조건에 만족하면 실행하는 형태를 가진다. 형태는 아래와 같다.

 

if ( 논리식 ) 명령문;

 

if를 사용할때는 반드시 소문자로 적을것.

 

if( a > b) 

printf("%d",a);     이런경우 b보다 클경우만 a의 값을 출력한다라는 선택의 경우이다.

 

 


 

 

if - else문

if문과 같이 기본형은 똑같다. 기본형에 else부분이 추가적으로 더해졌다고 생각하면 된다. 

쉽게 말해 if의 값이 성립하면 if의 논리식에 의해 참이 되어 명령문을 수행하게되고 if의 논리식에 거짓이 되면 else의 명령문이 수행된다.

 

if ( 논리식) 

{

명령문;

}

참이면 if의 명령문을 수행, 거짓이면 else의 명령문을 수행

else

{

명령문;

}

*명령문에 continue; 를 사용할경우 계속 조건에 맞으면 바로 계속 돌게 된다.

   break; 를 사용할경우는 조건에 맞으면 스톱 한다.

 

 

 


 

 

 

if -else if문

역시 if - else문의 형태와 비슷하다. 허나 else if의 경우 조건을 더 추가할 수가 있게되는것이다. 예문을 통해 설명하겠다.

 

if ( 논리식 )

{

명령문;

}

 

else if ( 논리식 )

{

명령문;

}

else if (논리문)

{

명령문;

}

   .             if의 값이 참이면 if안의 명령문을 수행하게 되고, 아닐경우 아래쪽 방향으로

   .             else if의 값을 검색하고 역시 확인후 참이면 실행한다. 마지막까지 참 값이

   .             없을경우 마지막으로 else를 실행한다.

else

{

명령문;

}

 

 


 

 

switch문

if문의 경우 둘중하나를 선택하여 출력하는 방식에 비해서 switch문은 여러가지 경우의 수를 두고 해당되는 것에 대해서 골라 결과가 나오게 하는 방식이다.

 

switch문의 형식

switch ( 정수식 )

{

case 정수값1 :

명령문;

break;

 

case 정수값2 :

명령문;

 

.             break;         해당되는 case 정수번호의 값에 가서 명령문을 수행한다. 

.                              값이 없으면 default로 가서 명령문을 수행

.

case 정수값a :

명령문;

break;

default : 

명령문;

}

 

switch문은 case 안에 반드시 break; 명령문을 넣어야한다. 그렇지 않으면 위에서부터 계속 실행하기 때문에 break;를 넣어야 필요한 조건을 사용하고 switch문을 빠져 나온다. 

 

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형