본문 바로가기
카테고리 없음

조건문(if~else,switch case) 사용법

by ByteBridge 2013. 2. 20.
반응형

if(비교식){
   수행문:
}
비교식은 참의 값일때만 수행문을 수행하는것이다.
if(비교식)
비교식이 참일때 수행할 문 1; 
비교식과 상관없는 문 2;
가 있다고 할때 문1은 비교식에 의하여 실행되여야하는 문이지만 
문2 는 비교식과 상관없을때 하려는 문이다 
그러나 두번째 문은 비교식에 상관없이 무조건 절차적으로 실행
된다

따라서 해결방법은 {문1 } 비교식이 참일때 수행할 문1을 블록으로 
감싸준다.

또 다른 해결방법으로 

if(비교식){  
문1;
} else 
{
문2;
}
비교식이 참일경우 문1을 수행하고 비교식이 참이아닐경우를 대비해
else 문 아래 문2를 사용한다.

마찬가지로 비교식이 참이 아닐경우 else 문다음에 오는 문을 
사용하려했다면 블록처리로 감싸줘야 한다.
만일 감싸주지않고 if 문에서 비교식이 참이 아니고 else 문에서
비교식이 거짓일경우 수행하려하고 그 다음 다른 문 3 이 올경우 , 
즉 if 문의 비교식도, else 문의 if 문 비교식의 거짓도 아닌경우
를 대비하여 블록 처리를 해주어야 한다.

이러한 상황을 해결하는 방법이 
else if(비교식) 을 추가하여 주는것이다.
즉 처음 if(비교식) 부터 시작하여 else if(비교식) 여러개를 
사용하여 참일경우 혹은 해당비교식이 참일경우까지 절차적으로
수행한다.

그러나 이러한 else if 문의 절차적인 수행코드가 수없이 많을경우
컴파일 시간이 상당히 오래 걸릴것이라는것이다. 

따라서 해결방법은 switch case : break; default 문을 사용하는
것이다.

switch(비교식){

case (정수 or '문자') :
break;
     :
     :
default;

를 사용한다 
case 문에는 실수가 들어가지않는다.
문자도 아스키코등이므로 수식으로 표시할수있지만 아스키코드표를
상당히 많기때문에 쉬운방법으로 '문자' 따옴표안에 문자를 넣어주면
컴퓨터가 알아서 정수로 바꿔주기때문에 편리하다.

이상 if,if~else,else if , switch case break default 를 사용하는 방
법이었습니다.

반응형