첨부 이미지에서 보시듯 언어는 C, IDE는 Dev-C++, 컴파일러는 GCC입니다.
7 라인을 실행했을 때 "100 / 200 = 0.5"로 출력되기를 원합니다. a와 b를 정수형으로 설정한 경우 0.0(좌측, %d / %d = %.1f), 실수형으로 설정한 경우 0.000000(우측)으로 출력됩니다.
#define이 아닌 int로 정의해도, 100과 200이라는 값을 직접 넣어도 같은 결과가 나옵니다. 어떻게 해야 제가 원하는 것처럼 출력이 될까요?
int b = 200;
printf("%d / %d = %.1f", a, b, (float)a / (float)b);
또는
float a = 100;
float b = 200;
printf("%d / %d = %.1f", (int)a, (int)b, a / b);
정수를 나누기 연산해버리면 실수로 안나오고 소수점이 잘려버립니다.
나누기 연산은 실수로 하세요.
그리고 오른쪽 output은 a, b가 전부 0.0인게 뭔가 코드가 잘못 들어간거 같군요.