본문 바로가기
c언어

c언어 if문 사용법 알아보기

by 개발자 L 2022. 12. 2.
반응형

c언어 if문 사용법 알아보기

네 안녕하세요, 이번 포스팅에서는 c언어 if문을 사용하는 방법에 대하여 알아보는 시간을 가져보도록 하겠습니다.

if문은 다른 말로 조건문이라고 합니다.

그 이유는 '~하면 ~해라'로 끝나는 문법이기 때문입니다.

그래서 이제부터는 선택을 할 수 있는 문법을 작성할 겁니다.

그럼 이제부터 같이 알아봅시다.

 

1. if문의 사용법

if문의 문장 구조는 이렇습니다.

if (조건식)
{
	문장
}

이런 식의 구조를 가지고 있습니다.

그래서 조건식 자리에 들어가 있는 논리식이나 그 외 수식이 선언이 되면, 

그 조건에 맞는다면 중괄호 안에 있는 문장을 출력하는 구조로 되어있습니다.

그리고 그 조건에 맞지가 않는다면 실행 시에 아무것도 출력하지 않습니다.

그래서 그럴 경우에 else를 붙여서 if - else문을 쓰는데,

이는 좀 더 복잡하기 때문에 다음 포스팅에서 다루도록 하겠습니다.

그럼 바로 이를 활용한 예제를 한 번 보여주도록 하겠습니다.

#include <stdio.h>

int main()

{
    int number;

    printf("정수를 입력하세요 : ");
    scanf("%d", &number);

    if (number > 0)
    {
        printf("양수입니다\n");
    }

    printf("입력된 값은 %d입니다.\n", number);

    return 0;
}

이렇게 한 번 작성을 해봤습니다.

여기에서 주의를 하셔야 할 점은 if문 아래에 있는 printf() 함수는 사실 묶지 않아도 됩니다.

하지만 제가 중괄호로 묶은 이유는 나중에 중첩된 if문을 쓸 때 여러개의 값을 쓰기 때문에 그것을 구분을 안 해주면 엉뚱한 문장이 출력이 되고, 괄호 안에 묶여서 한 번에 출력이 되어야 하는 값이 출력이 되지 않는 경우도 빈번히 발생을 합니다.

그래서 그럴 경우가 생길 수가 있어서 중괄호를 치는 습관을 들이는 것이 중요합니다.

그리고 괄호 밖에 있는 printf()함수는 항상 출력이 되는 함수입니다.

그래서 그러한 차이도 보여드리고 싶어서 작성을 했습니다.

그럼 결과를 한 번 보여드리겠습니다.

정수를 입력하세요 : 5
양수입니다
입력된 값은 5입니다.

이건 양수를 제대로 입력하여 if문이 실행이 되었을 때의 결과입니다.

그러면 이어서 양수가 아닌 수를 한 번 입력을 해보도록 하겠습니다.

정수를 입력하세요 : 0
입력된 값은 0입니다.
정수를 입력하세요 : -1
입력된 값은 -1입니다.

이렇게 0을 입력했을 때와 음수를 입력했을 때는 조건에 맞지 않아서 조건문이 출력이 되지 않은 것을 볼 수가 있습니다.

그래서 if문은 조건이 성립이 되어야만 출력이 되는 조건부 수행 문장이라는 것을 알 수가 있습니다.

그리고 이러한 if문을 사용을 하여 절댓값을 출력하는 프로그램을 작성을 할 수도 있습니다.

그럼 제가 예제를 한 번 작성을 해보도록 하겠습니다.

#include <stdio.h>

int main()

{
    int number;

    printf("정수를 입력하세요 : ");
    scanf("%d", &number);

    if (number < 0)
    {
        number = -number;
    }

    printf("절댓값은 %d입니다.\n", number);

    return 0;
}

이렇게 한 번 작성을 해봤습니다.

그러면 결과는 잘 나오는지 한 번 볼까요?
먼저 양수를 입력했을 경우입니다.

정수를 입력하세요 : 4
절댓값은 4입니다.

이어서 음수를 입력했을 경우입니다.

정수를 입력하세요 : -4
절댓값은 4입니다.

이렇게 결과가 잘 나오는 것을 볼 수가 있습니다.

 

2. 복합문

그리고 한 개의 if문에서 여러개의 문구를 출력을 할 수도 있습니다.

이러한 문장을 복합문이라고 합니다.

그리고 이러한 경우에는 무조건 중괄호를 묶어서 실행을 해야만 합니다.

그래야만 if에 묶여서 한번에 실행이 되고,

묶이지 않은 문장은 if문과 함께 실행이 되는 것이 아니라, 항상 실행이 되는 문장이 되기 때문에 주의를 하셔야 합니다.

사용 방법은 이렇습니다.

if (조건문)
{
	문장 1;
	문장 2;    
}

이런 식으로 쓸 수가 있습니다.

이렇게 써야만 if문으로 여러 개의 문장을 제어를 할 수가 있습니다.

반응형

 

3. 참과 거짓

참과 거짓은 if문으로 가장 많이 다루는 논리입니다.

그 이유는 '~라면 ~해라'라는 문법을 의미하기 때문입니다.

그래서 그 값이 0인가, 0이 아닌가에 따라서 참과 거짓을 판별하며,

if문의 경우는 보통 결과가 0인 경우를 참, 아닌 경우를 거짓으로 하며,

이 조건식은 간략화한 문장과 표준 식이 둘 다 있는데,

제가 각각 보여드리도록 하겠습니다.

먼저 표준식입니다.

if (x != 0)
	printf("x는 0이 아닙니다.\n);
    
if(x == 0)
	printf("x는 0입니다.\n);

이렇게 표준식을 쓰는데, 이것보다 더 간략히 쓸 수가 있습니다.

if (x)
	printf("x는 0이 아닙니다.\n);
    
if (!x)
	printf("x는 0입니다.\n);

이렇게 간략하게 쓰기도 합니다.

 

4. if문 사용할 때 주의사항

if문을 사용할 떄 주의사항이 있습니다.

이를 어긴다면 에러가 생길 수 있으며, 실제 개발자들도 많이 하는 실수들입니다.

 

4 - 1. if문의 조건식에 세미콜론(;)을 붙이지 말 것.

세미콜론은 마침표의 역할을 하기 때문에 조건식에 세미콜론을 붙이면 그 뒤에 나와야 할 문구들이 출력이 되지 않습니다.

 

4 - 2. 같다는 '=='로 작성을 해야 한다.

'='는 대입 연산자라고 c언어에서 정의가 되어있기 때문에 쓸 수가 없습니다.

if문의 조건식은 논리식이기 때문에 논리식에서 '같다'를 의미하는 '=='를 사용하여 나타내야 합니다.

 

여기까지 c언어 if문에 대하여 알아보는 시간을 가졌습니다.

다음 포스팅에서는 if -else문에 대하여 알아보도록 하겠습니다.

긴 글 읽어주신 독자분들께 진심으로 감사합니다 ~

반응형

댓글