[정답] 29. 산술 연산자

◈ 기본 연습
1. 두 개의 정수를 입력받아 합, 차, 곱, 몫을 출력하는 프로그램을 작성하세요.
답:

//두 개의 정수를 입력받아 합, 차, 곱, 몫을 출력하는 프로그램
#include <stdio.h>
int main(void)
{
    int a,b;
    printf("두 개의 정수 입력:");
    scanf_s("%d%d",&a,&b);
    printf("합:%d 차:%d 곱:%d 몫:%d\n",a+b,a-b,a*b,a/b);
    return 0;
}

2. 두 개의 실수를 입력받아 합, 차, 곱, 몫을 출력하는 프로그램을 작성하세요.
답:

//두 개의 실수를 입력받아 합, 차, 곱, 몫을 출력하는 프로그램
#include <stdio.h>
int main(void)
{
    double a,b;
    printf("두 개의 실수 입력:");
    scanf_s("%lf%lf",&a,&b);
    printf("합:%f 차:%f 곱:%f 몫:%f\n",a+b,a-b,a*b,a/b);
    return 0;
}

3. 한 개의 정수와 한 개의 실수를 입력받아 합, 차, 곱, 몫을 출력하는 프로그램을 작성하세요.
답:

//한 개의 정수와 한 개의 실수를 입력받아 합, 차, 곱, 몫을 출력하는 프로그램
//한 개의 정수와 한 개의 실수를 입력받아 합, 차, 곱, 몫을 출력하는 프로그램
#include <stdio.h>
int main(void)
{
    int a ;
    double b;
    printf("정수: ");
    scanf_s("%d",&a);
    printf("실수: ");
    scanf_s("%lf",&b);
    printf("합:%f 차:%f 곱:%f 몫:%f\n",a+b,a-b,a*b,a/b);
    return 0;
}

4. 다음 프로그램의 출력 결과를 예측하고 출력 결과를 확인하시오. 그리고 출력 결과가 서로 다른 이유를 설명하시오.

#include <stdio.h>
int main()
{
    printf("%d \n", 3*2/3);
    printf("%d \n", 2/3*3);
    return 0;
}

답:
2
0
3*2/3 은 3*2를 먼저 수행한 후에 6/3 을 수행하여 결과가 2
2/3*3 은 2/3을 먼저 수행한 후에 0*3 을 수행하여 결과가 0

4. 두 개의 정수를 입력받아 나머지를 출력하는 프로그램을 작성하세요.
답:

//두 개의 정수를 입력받아 나머지 출력
#include <stdio.h>
int main(void)
{
    int a,b;
    printf("두 개의 정수 입력:");
    scanf_s("%d%d",&a,&b);
    printf("나머지:%d\n",a%b);
    return 0;
}