본문 바로가기

C/C++/예제

[C 예제] switch 문으로 계산기 만들기.

반응형

C 예제.

SWITCH 문을 이용해 간단한 계산기 만들기.


해당 예제의 목표는

사용자로부터 1+1 또는 10 * 5 이런식으로 한번에 입력을 받아 

내가 어떤 연산을 하겠다는 특정 메뉴 등의 선택 없이

바로 결과를 보여는것 입니다.


소스는 정말 간단합니다 ~ 

보세요 ~


#include 

int main()
{
    double n1 = 0, n2 = 0;
    // 실수형태의 값을 입력할수도 있기 때문에 int 형이 아닌 double 형으로 선언!!
    char c = 0;

    printf("ex> 1 + 2\n");
    printf("연산을 입력 하세요 : ");
    scanf("%lf %c %lf", &n1, &c, &n2);
    // 사용자로부터 연산을 입력 받는 부분.
    // 사용자가 10.2 + 20 을 입력할경우 순서대로 n1 = 10.2 / c = '+' / n2 = 20 이 들어가게 됩니다.

    switch(c) // 변수 c 안의 값을 이용한 switch 문 시작.
    {
        case '+':
            printf("%.1f + %.1f = %.2f\n", n1, n2, n1+n2);
            // %.1f 의 뜻은 소수점 1자리까지만 출력하겠다는 뜻입니다.
            // %.2f 는 소수점 2번째 자리까지만 출력~
            // 만약 소수점 3번째 자리까지 값이 있을때 .2f 를 통해 소수점 2자리만 출력을 하게되면
            // 3번째 자리수를 반올림해서 소수점 두자리까지만 출력을 해줍니다. ( 10.009 -> 10.01 )
            break;

        case '-':
            printf("%.1f - %.1f = %.2f\n", n1, n2, n1-n2);
            break;

        case '/':
            printf("%.1f / %.1f = %.2f\n", n1, n2, n1/(double)n2);
            break;

        case '*':
            printf("%.1f * %.1f = %.2f\n", n1, n2, n1*n2);
            break;

        default: // +, -, *, / 모두 아닐때
            printf("잘못 입력 하셨어요..\n");
            break;
    }

    return 0;
}



소스상에 있는 주석문을 통한 설명 외에는 따로 설명할게 없는듯해서,

이만 마치겠습니다.


혹시나 궁금하신 사항은 언제든 물어보세요 ~ !


반응형