下面程序的运行结果是什么?
提示:请上机实验,不要凭主观感觉回答。
#include <stdio.h>
int main()
{
double i;
for(i=0;i!=10;i+=0.1)
printf("%.lf\n",i);
return 0;
}
由于浮点误差的存在,i一直满足i!=10这个条件,程序就没有了使其终止的限制条件。
i精确点的取值,如下图:
因此,对于高精度问题我们一般会借助java来编写。
下面程序的运行结果是什么?
提示:请上机实验,不要凭主观感觉回答。
#include <stdio.h>
int main()
{
double i;
for(i=0;i!=10;i+=0.1)
printf("%.lf\n",i);
return 0;
}
由于浮点误差的存在,i一直满足i!=10这个条件,程序就没有了使其终止的限制条件。
i精确点的取值,如下图:
因此,对于高精度问题我们一般会借助java来编写。