Heim  >  Artikel  >  Backend-Entwicklung  >  Wie erhalte ich ein Float-Ergebnis aus der Ganzzahldivision in C?

Wie erhalte ich ein Float-Ergebnis aus der Ganzzahldivision in C?

DDD
DDDOriginal
2024-11-25 17:37:14480Durchsuche

How to Get a Float Result from Integer Division in C  ?

Umwandeln von Ganzzahlen in Gleitkommazahlen für eine genaue Division

In C führt die Division zweier Ganzzahlen, z. B. in a/b, zu einem ganzzahligen Quotienten . Um ein Float-Ergebnis zu erhalten, müssen die Operanden speziell in Floats umgewandelt werden.

Problemstellung:

Bei der Verwendung ganzzahliger Operanden in einer Divisionsoperation wird das Ergebnis auf gekürzt eine Ganzzahl. Wie kann man dies verhindern und die Integrität der Zahlen aufrechterhalten?

Lösung:

Um dieses Problem zu beheben und ein Float-Ergebnis sicherzustellen, wandeln Sie die Operanden in Floats um:

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

Durch die explizite Konvertierung der Operanden in Gleitkommazahlen erzeugt die Divisionsoperation ein Gleitkommaergebnis, wobei etwaige Dezimalstellen erhalten bleiben Präzision.

Beispiel:

Betrachten Sie den folgenden Code:

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

int main()
{
  int a = 10, b = 3;
  float ans = (float)a / (float)b;
  cout << fixed << setprecision(3);
  cout << (a/b) << endl;
  cout << ans << endl;
  return 0;
}

Ausgabe:

3
3.333

Wie oben gesehen , der Guss sorgt für ein Float-Ergebnis unter Beibehaltung der korrekten Dezimalgenauigkeit.

Das obige ist der detaillierte Inhalt vonWie erhalte ich ein Float-Ergebnis aus der Ganzzahldivision in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn