int型与double型

int型除以double型 会得到 double型

但是int型除以int型无论如何也得不到double型,尽管结果已经定义double型,比如以下代码

double a;
int x = 10;
int y = 4;
a = x / y;

//此时会得到a=2  而非2.5
//要想得到2.5,可以把x/y进行强制转换

a = (double) x / y;

*******************************2022.7.9更新**********************************

两个浮点数不能直接用 ==   >   <比较大小,因为编译器会认为下方a和b相等,此时要用一个精度来确定二者大小,一般用1e-6。若想比较而这大小,要用fabs函数(两个数的绝对值)

double a = 1.0;
double b = 1.000001;
const double c = 1e-6;

if(fabs(a - b) > c)

你可能感兴趣的:(c++,c++)