我正在解决一个困扰我一段时间的问题。还是不明白。更改的类型是有道理的m
,但我仍然不明白m
在此过程中经历了什么。它的价值如何变化?下面是代码。
我已经在代码块上尝试过了。
#include<stdio.h>
int main()
{
int m=5;
m = (float)m / (2.0);//There, shouldn't m be 2.500000?
printf("%f\n", m);
printf("%0.2f\n",(float)m/2.0);
getchar();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
预期结果:
Run Code Online (Sandbox Code Playgroud)2.500000 1.25
实际结果:
Run Code Online (Sandbox Code Playgroud)nan 1.00