#include
using namespace std;
float fun(int x,int y)
{
return x/y;
}
int main()
{
cout<<fun(7,2)/2<<endl;
return 0;
}
这个输出是1.5
为什么?
fun函数返回的不应该是float型的数吗,那返回的不应该是3.5吗?为什么是3.0
return x/y
先算7/2 = 3
再把3转成float
x / y,x和y都是整型,计算结果也是整型,所以计算结果是3,然后返回时转换为float型3.0,
cout << fun(7, 2) / 2 << endl;输出的结果就是3.0/2=1.5