首页 >后端开发 >C++ >为什么我的华氏温度转换程序输出 0?

为什么我的华氏温度转换程序输出 0?

Susan Sarandon
Susan Sarandon原创
2024-10-25 02:47:02279浏览

Why Does My Fahrenheit to Celsius Conversion Program Output 0?

为什么这个 C 程序错误地将华氏温度转换为摄氏温度?

尝试将华氏温度转换为摄氏温度的 C 程序会由于以下原因而造成混乱:错误输出 0。让我们深入研究代码并解释问题。

程序首先包含必要的标准输入和输出库,并定义一些变量。

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

float celsius;
float fahrenheit;</code>

代码然后提示用户输入摄氏温度并将其存储在摄氏度变量中。

<code class="cpp">cout << "Enter Celsius temperature: ";
cin >> celsius;</code>

将摄氏温度转换为华氏温度的计算如下:

<code class="cpp">fahrenheit = (5/9) * (celsius + 32);</code>

问题出现在这里。表达式 (5/9) 默认执行整数除法,结果为 0。为了获得正确的小数结果,我们需要将其中一个操作数转换为浮点类型。

<code class="cpp">fahrenheit = (5.0/9) * (celsius + 32);</code>

通过使用浮点除法,我们确保计算正确完成并保留小数部分。

程序最后输出华氏温度。

<code class="cpp">cout << "Fahrenheit = " << fahrenheit << endl;</code>

通过进行此修正,程序现在将根据用户提供的摄氏度值正确转换和显示华氏温度。

以上是为什么我的华氏温度转换程序输出 0?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn