Heim >Backend-Entwicklung >C++ >Warum gibt mein C-Celsius-zu-Fahrenheit-Umrechner 0 aus?

Warum gibt mein C-Celsius-zu-Fahrenheit-Umrechner 0 aus?

DDD
DDDOriginal
2024-10-25 05:26:29473Durchsuche

Why Does My C   Celsius to Fahrenheit Converter Output 0?

C-Programm zur Umrechnung von Celsius in Fahrenheit

Dieses C-Programm zielt darauf ab, Celsius-Temperaturen in Fahrenheit umzurechnen. Einige Benutzer sind jedoch auf ein Problem gestoßen, bei dem das Programm fälschlicherweise 0 ausgibt. In diesem Artikel wird der Grund für dieses Problem untersucht und eine Lösung bereitgestellt.

Problembeschreibung

Bedenken Sie Folgendes folgender C-Code:

<code class="cpp">#include <iostream>
using namespace std;

int main() {
    float celsius;
    float fahrenheit;

    cout << "Enter Celsius temperature: ";
    cin >> celsius;
    fahrenheit = (5/9) * (celsius + 32);
    cout << "Fahrenheit = " << fahrenheit << endl;

    return 0;
}</code>

Beim Ausführen dieses Codes kommt es bei einigen Benutzern zu einer fehlerhaften Ausgabe von 0.

Lösung

Das Problem liegt darin die Berechnung des Fahrenheit-Wertes. Der Ausdruck (5/9) führt standardmäßig eine Ganzzahldivision durch, was zu 0 führt. Um eine Gleitkommadivision sicherzustellen, sollte der Ausdruck in (5.0/9) geändert werden. Hier ist der korrigierte Code:

<code class="cpp">#include <iostream>
using namespace std;

int main() {
    float celsius;
    float fahrenheit;

    cout << "Enter Celsius temperature: ";
    cin >> celsius;
    fahrenheit = (5.0/9) * (celsius + 32);
    cout << "Fahrenheit = " << fahrenheit << endl;

    return 0;
}</code>

Mit dieser Änderung berechnet und zeigt das Programm die Fahrenheit-Temperatur korrekt an, wenn ein Celsius-Wert angegeben wird.

Das obige ist der detaillierte Inhalt vonWarum gibt mein C-Celsius-zu-Fahrenheit-Umrechner 0 aus?. 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