我必须使用WinForms写一个简单的华氏度到摄氏度的转换器,但是单击按钮后,转换后的(摄氏度)温度不会按预期显示。它始终显示摄氏温度为0。该程序具有一个用于输入华氏温度的简单文本框,一个转换按钮和一个用于输出转换后温度的标签。
我已经尝试对摄氏温度值进行硬编码,并尝试使用几种不同的华氏温度值,包括212华氏度这样的明显值。
namespace FtoCConverter
{
public partial class TempConverter : Form
{
public decimal fahrenheit;
public decimal celsius = 50;
public TempConverter()
{
InitializeComponent();
}
private void convertButton_Click(object sender, EventArgs e)
{
fahrenheit = decimal.Parse(fTempEntry.Text);
celsius = (5 / 9) * (fahrenheit - 32);
CelsiusLabel.Text = string.Format($"Your temperature is {0:0.00} degrees Celsius.", celsius);
fTempEntry.Focus();
}
}
}
正确的温度将以摄氏度显示。
答案 0 :(得分:0)
在使用字符串插值时,请尝试
celsius = (5m / 9) * (fahrenheit - 32);
CelsiusLabel.Text = $"Your temperature is {celsius:0.00} degrees Celsius.";