>  기사  >  백엔드 개발  >  C의 정수 나눗셈에서 부동 소수점 결과를 얻는 방법은 무엇입니까?

C의 정수 나눗셈에서 부동 소수점 결과를 얻는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-11 01:00:02476검색

How to Get a Floating-Point Result from Integer Division in C  ?

부동 소수점 결과에 대한 정수 나누기

결과를 저장하기 위해 부동 소수점 변수를 사용함에도 불구하고 정수 나누기는 다음과 같은 결과를 초래할 수 있습니다. 잘린 출력. 입력 변수를 정수로 유지하면서 이 문제를 극복하려면 다음 해결 방법을 고려하십시오.

피연산자를 명시적으로 부동 소수점으로 캐스팅합니다.

float ans = (float)a / (float)b;

이 캐스팅 작업은 컴파일러가 부동 소수점을 수행하도록 합니다. 피연산자가 정수인 경우에도 부동 소수점 결과를 보장합니다. 아래 예는 예상되는 동작을 보여줍니다.

#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
  int a = 10, b = 3;
  float ans = (float)a / (float)b;  // Explicit casting to floats
  cout << fixed << setprecision(3);
  cout << ans << endl;  // Floating-point result
  return 0;
}

위 내용은 C의 정수 나눗셈에서 부동 소수점 결과를 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.