C, C++

6 : c/c++ 강좌 "선택제어문"

알 수 없는 사용자 2022. 1. 17. 01:25
728x90
반응형

if 문은 선택제어문중 하나 입니다. () 괄호 안의 조건이 참이면 {} 중괄호 안의 코드를 실행 하고

만약 () 괄호 안의 조건이 참이 아닌 경우에는 {} 중괄호 안의 코드를 실행 하지 않는 함수 입니다.

() 괄호 안에는 여러 조건을 넣을수 있습니다. 만약 a 라는 변수가 선언 되어 있다고 가정 하면

if(a>0){} 라고 간단하게 조건문을 만들수 있습니다. 이런 경우에 중괄호 안에 어떤 코드가 들어가

있다고 가정을 해보면  a 가 0 보다 클때만 {} 중괄호 안의 코드가 실행 됩니다. 한번 간단하게

입력문과 조합 해서 a>0 보다 클때만 중괄호 안의 코드가 실행 되는 코드를 작성 해보겠습니다. 

#include <stdio.h>

int main()
{
    int a = 0;
    int b = 0;
    int c = 0;
    
    scanf("%d",&a);
    
    if(a>0)
    {
    	a = b + c;
    }
    
    return 0;
}

이렇게 간단한 코드를 작성 해보았는데 이 코드를 간단하게 설명 하자면 만약에 a > 0 이라는 조건이 참이면 

a 안에다가 b + c 의 값을 대입 하는 것 입니다. 또한 a , b , c 값에 다 0 을 대입 해준 이유는 맨 처음에 

변수를 선언 하면 그 변수 안에 랜덤한 값이 들어가있습니다. 만약에 변수를 선언한 직후에 디버깅을 해보면 변수의 형식에 따라 랜덤한 값이 들어가있는것을 보실수 있습니다. 그렇기 때문이 입력이 되지 않는 이상변수를 초기화 하는 습관은 아주 중요합니다. 그리고 선택제어문 안에 다른 선택제어문을 넣을수도 있습니다. 한번 4개의 변수를 선언 하여 입력문을 같이 응용하여 이중 선택제어문을 이용한 코드를 만들어보도록 하겠습니다.

#include <stdio.h>

int main()
{
    int a = 0;
    int b = 0;
    int c = 0;

    scanf("%d%d",&a,&b);

    if(a>0)
    {
        if(b<0)
        {
            a = b + c;
        }
    }
    return 0;
}

이번에는 선택제어문에서 else 문과 else if 문을 사용하는 방법을 알아보도록 하겠습니다. else 문과 else if 문은

둘 다 if 문 다음에 옵니다. 기본적으로 순서를 나열 해 보면은 1. if 2. else if 3. else 문 입니다. 선택연산자에서 마지막은

꼭 else 문을 써야 합니다. 만약에 3가지의 경우를 비교 하는 코드를 작성 해 보도록 하면 다음과 같이 됩니다. 

#include <stdio.h>

int main()
{
    int a = 0;

    scanf("%d",&a);

    if(a>0)
    {
        a = 5;
    }

    else if(a<0)
    {
        a = 6;
    }

    else
    {
        a = 7;
    }

    return 0;
}

이 코드를 간단하게 설명 해보면 우선 a 라는 변수의 값을 입력 받습니다. 우선 if 문을 살펴 보자면 만약에 

a > 0 일때는 a 라는 변수에 5 를 대입 합니다. else if 문에서는 만약에 입력받은 a < 0 일시에는 a 에 6 을 

대입 하고,  만약에 위 조건이 둘 다 성립하지 않은 else 의 경우에서는 즉,  a = 0  인 경우에는 a 의 값에다가 7 을 대입 한다는 의미 입니다. 꼭 복습 해보시길 바랍니다.

'C, C++' 카테고리의 다른 글

8 : c/c++ 강좌 "반복제어문 2"  (0) 2022.01.17
7 : c/c++ 강좌 "반복제어문 1"  (0) 2022.01.17
5 : c/c++ 강좌 "연산자"  (1) 2022.01.16
4 : c/c++ 강좌 "변수"  (3) 2022.01.16
3 : c/c++ 강좌 "입력"  (0) 2022.01.16