공부/C언어

13 - if 문 잘쓰기

Moonie' 2022. 1. 9. 00:50
반응형

우선적으로 if 조건과 나머지로 사용가능하다.

#include <stdio.h>

int main() {
    int a, b,c;

    scanf("%d%d%d", &a, &b, &c);
    //최댓값 출력
    // a > b > c
    // a > c > b
    // c > a > b
    if (a > b){
        if (a>c){
            printf("%d\n",a);
        }
        else{
            printf("%d\n",c);
        }

    }
    else{//b>a
        if ( b > c ){
            printf("%d\n",b);
        }
        else{ // c > b
            printf("%d\n",c);
        }
      }
}

이를 else 안의 if를  else if 로 두어 다음과 같이 변경 가능하다

int main() {
    int a, b,c;

    scanf("%d%d%d", &a, &b, &c);
    //최댓값 출력
    // a > b > c
    // a > c > b
    // c > a > b
    if (a > b){
        if (a>c){
            printf("%d\n",a);
        }
        else{
            printf("%d\n",c);
        }

    }
    else if ( b > c ){
            printf("%d\n",b);
    }
    else{ // c > b
        printf("%d\n",c);
    }
}

if 문에서 중괄호를 다음과 같이 줄이는 방법도 있다. 그러나 왠만하면 기본적인 중괄호는 사용하는 것이 좋다.

#include <stdio.h>

int main() {
    int a, b,c;

    scanf("%d%d%d", &a, &b, &c);
    if (a > b){
        if (a>c) printf("%d\n",a);
        else printf("%d\n",c);
    }
    else if ( b > c ) printf("%d\n",b);
    else printf("%d\n",c);
}

아래와 같이 사용하는 경우도 있다.

if () {
} else if {
} else {
}

다음 경우는 가독성은 좋으나 공간을 많이 차지한다.

if(a > b)
{
	printf("\n");
}
else
{
	printf("**");
}
반응형