1华氏度(℉) = 32 + 1摄氏度 x 1.8开氏度(K) = 273.15 + 摄氏度列氏度(°Re) = 摄氏度 ÷ 1.25兰氏度(°R) = (摄氏度 + 273.15) x 1.8摄氏度(℃) = (华氏度 - 32) ÷ 1.8
0开氏度(K)被称作绝对零度,只能无限接近,永远无法达到,所以开氏度(K)数值不能小于0,摄氏度(℃)数值不能小于-273.15。
摄氏度(℃)的发明者是Anders Celsius(1701-1744),其结冰点是0°C,沸点为100°C,摄氏度(℃)是我国较常用的温度单位。
华氏度(℉)是以其发明者Gabriel D.Fahrenheir(1681-1736)命名,其结冰点是31°F,沸点为212°F,华氏度(℉)在美国及许多英语国家较常使用。
/// <summary>
/// 温度单位换算
/// </summary>
/// <param name="GeTempType"></param>
/// <param name="Temp">开氏度</param>
float GetTempType(TempType GeTempType, TempType SeTempType, float Temp)
{
float tempTemp = Temp;
switch (GeTempType)
{
case TempType.摄氏度C:
switch (SeTempType)
{
case TempType.摄氏度C:
tempTemp = Temp;
break;
case TempType.华氏度F:
tempTemp = (Temp - 32) / 1.8f;
break;
case TempType.开氏度K:
tempTemp = Temp - 273.15f;
break;
case TempType.兰氏度R:
break;
case TempType.列氏度Re:
break;
}
break;
case TempType.华氏度F:
switch (SeTempType)
{
case TempType.摄氏度C:
tempTemp = (32 + Temp) * 1.8f;
break;
case TempType.华氏度F:
tempTemp = Temp;
break;
case TempType.开氏度K:
tempTemp = 32 + 1.8f * (Temp - 273.15f);
break;
case TempType.兰氏度R:
break;
case TempType.列氏度Re:
break;
}
break;
case TempType.开氏度K:
switch (SeTempType)
{
case TempType.摄氏度C:
tempTemp = Temp + 273.15f;
break;
case TempType.华氏度F:
tempTemp = 273.15f + (Temp - 32) / 1.8f;
break;
case TempType.开氏度K:
tempTemp = Temp;
break;
case TempType.兰氏度R:
break;
case TempType.列氏度Re:
break;
}
break;
case TempType.兰氏度R:
switch (SeTempType)
{
case TempType.摄氏度C:
tempTemp = Temp;
break;
case TempType.华氏度F:
break;
case TempType.开氏度K:
tempTemp = Temp * 1.8f;
break;
case TempType.兰氏度R:
tempTemp = Temp;
break;
case TempType.列氏度Re:
break;
}
break;
case TempType.列氏度Re:
switch (SeTempType)
{
case TempType.摄氏度C:
tempTemp = Temp;
break;
case TempType.华氏度F:
break;
case TempType.开氏度K:
tempTemp = (Temp - 273.15f) / 1.25f;
break;
case TempType.兰氏度R:
break;
case TempType.列氏度Re:
tempTemp = Temp;
break;
}
break;
}
return tempTemp;
}
public enum TempType
{
摄氏度C,
华氏度F,
开氏度K,
兰氏度R,
列氏度Re
}