本人为初学者 有点想不明白
#include <stdio.h>
void main()
{
printf("%f\n",1.0/ 3 * 3);
}
按照网上的说法是算出0.999999 但我用VISUAL C++运行得出的是1.000000 这是为什么????
这我明白 我不懂的是为什么我家电脑运算出来的是1.000000而不是0.999999
那么为什么网上其他人运行却是0.9999999呢?不是会四舍五入吗?
追答你试试%lf应该没问题的,或者不改变%f输出,但是把1·0改为1·0f。因为你这里用%f输出,实际计算机做了类型转换。double以float输出,精度丢失。