1
我有两个函数作为一个更大的函数的一部分,我正在写作一个练习。这些功能的目的是将温度从华氏温度转换成摄氏温度,反之亦然。双功能只返回-0
我开始:
#include <iostream>
using namespace std;
double Celsius_to_Fahrenheit(double);
double Fahrenheit_to_Celsius(double);
摄氏到华氏正常工作:
double Celsius_to_Fahrenheit(double C){
double F = ((9/5)*C + 32);
return F;
}
但华氏到摄氏函数返回-0
不管是哪一种说法:
double Fahrenheit_to_Celsius(double F){
double C = ((5/9)*(F - 32));
return C;
}
第二个是怎么回事?我看不出任何会导致工作而不是其他工作的结构上的差异。
编辑:我只测试0
上的函数,两个函数都为非平凡参数打破!这更糟糕!
欢迎整数除法的世界。试试'double C =((5.0/9.0)*(F - 32.0));'。 – Phylogenesis 2015-03-31 00:04:07
摄氏温度到华氏温度也不起作用。 – user2357112 2015-03-31 00:04:11
@ user2357112我只对零进行测试!傻我! – GFauxPas 2015-03-31 00:05:06