2013-10-26 2 views
0

내가 말하는 것은 4.624에 대해 사용자가 부동 소수점 숫자를 입력한다고 가정 해 보겠습니다. 그러면 scanf를 사용하여이 값을 읽은 다음 수식이나 비슷한 것으로 연결하여 일종의 계산을 수행하는 데 사용할 수 있습니다. 이 숫자를 소수점 다음 두 자리 숫자로 읽으면 어떻게됩니까?이 숫자는 4.62입니다. 따라서 숫자는 4.624가 아니라 수식에서 사용하는 숫자입니다.입력 값을 소수점 이하의 원하는 자릿수까지 어떻게 읽습니까?

+2

입력이 '4.628'이면 어떻게됩니까? 이 값을'4.62' 또는'4.63'로 해석해야합니까? – nhgrif

답변

6
float x = 4.624; 

float x_truncated_to_two_decimal_places = floor(x*100.0)/100.0; 

또는 당신이 원하는에 따라

float x_rounded_to_two_decimal_places = round(x*100.0)/100.0; 

.

+0

@ H2CO3 사실, 내 대답을 변경, 감사합니다 – jbat100

+0

@ jbat100 감사합니다, upvoted. –

+0

@Joker jbat100의 대답은'scanf'를 통해 입력을받은 후에 취하는 단계를 보여줍니다. x = floor (x * 100.0) /100.0;' – nhgrif

관련 문제