티스토리 뷰

C언어를 공부하는 학생들이라면 C언어본색 열혈강의 C언어라는 책은 한번쯤 들어보았을 것이다. 그만큼 C언어 및 CPP를 학습하기에 적합한 책으로 많이 알려져 있기 때문이다. 최근들어 C언어본색 책에 연습문제 풀이해석을 올리기 시작했다. 모든 문제를 올리고 있진 않고 판단하여 프로그래밍 언어를 공부하는 학생이 꼭 풀어봤으면 하는 문제를 선별하여 풀이를 올리고 있다. 추후에 파트별로 모든 문제를 정리하여 올릴 계획이다.

오늘은 조건문을 활용하여 사용자로부터 3가지 수를 입력받아 큰 수부터 출력하는 프로그램이다. 반복문과 조건무을 함께 사용하여 정렬알고리즘을 통하여 쉽게 해결할수도 있지만, 오늘은 조건문만을 활용하여 문제를 풀어보고자 한다.

1) 사용자로부터 세 개의 정수를 입력받아 큰 수부터 차례대로 나타내시오.
[코드]

#include<stdio.h>
 
int main( void ){
       
        int num1 = 0;
        int num2 = 0;
        int num3 = 0;
 
        printf( "InputNum : " );
        scanf( "%d", &num1 );
        printf( "InputNum : " );
        scanf( "%d", &num2 );
        printf( "InputNum : " );
        scanf( "%d", &num3 );
 
        if( num1 > num2 && num1 > num3 && num2 > num3 ){
                 printf( "%d, %d, %d\n", num1, num2, num3 );
        }
        else if( num1 > num2 && num1 > num3 && num3 > num2 ){
                 printf( "%d, %d, %d\n", num1, num2, num3 );
        }
        else if( num2 > num1 && num2 > num3 && num1 > num2 ){
                 printf( "%d, %d, %d\n", num2, num1, num3 );
        }
        else if( num2 > num1 && num2 > num3 && num2 > num1 ){
                 printf( "%d, %d, %d\n", num2, num3, num1 );
        }
        else if( num3 > num1 && num3 > num2 && num1 > num2 ){
                 printf( "%d, %d, %d\n", num3, num1, num2 );
        }
        else if( num3 > num1 && num3 > num2 && num2 > num1 ){
                 printf( "%d, %d, %d\n", num3, num2, num1 );
        }
        else{
                 printf( "세 수는 모두 같은 수 이다.\n" );
        }
        return 0;
}

[실행결과]


※공감은 블로거에게 큰힘이 됩니다.

댓글