아래 프로그램은 형식 지정자가 부동 소수점 형식이지만 value = 0.000000을 반환합니다.부동 소수점 연산은 값 = 0을 산출합니다.
#include <stdio.h>
int main()
{
printf ("%f", 5/9);
return 0;
}
아래 프로그램은 형식 지정자가 부동 소수점 형식이지만 value = 0.000000을 반환합니다.부동 소수점 연산은 값 = 0을 산출합니다.
#include <stdio.h>
int main()
{
printf ("%f", 5/9);
return 0;
}
표현식 5/9
에는 두 개의 정수 인수가 있으므로 사용 된 정수 나누기로 평가됩니다. 따라서 결과는 0
입니다.
int
을 %f
형식 지정자로 전달하여 정의되지 않은 동작을 호출합니다.
printf("%f", 5.0/9.0);
printf ("%f", 5/9);
5/9
정수 분할 인 : 부동 소수점 값
변경 피연산자들 중 적어도 하나가 부동 소수점 나눗셈을 사용한다. 표현식은 int
이지만, f
은 float
또는 double
인수가 필요합니다.
변경에 대한 호출 :
printf ("%f", 5/9.0);
는 부동 소수점 부문을 수행하고 double
인수를 가지고 있습니다.
5
및 9
은 정수입니다. 두 정수의 나눗셈은 항상 정수가됩니다. 그들 중 하나에게 플로트 또는 확인 더블
printf ("%f", 5.0/9);
또는
printf ("%f", 5/9.0);
및 '9.0'은'float'이 아니며'double''입니다 – mch
수정 해 주셔서 감사합니다 :) –
'정수 분할 때,/연산자의 결과는 어떤 부분 부분 대수 지수가 discarded'입니다'5.0' –