看下printf("%.2lf\n", 4.015);这条语句为何输出的是4.01,而预计是要输出4.02的难道这就是传说的浮点数精度的问题求原因求怎么解决[解决办法]对有些小数,用double不能精确表示的,做4舍5入的时候只是简单判断是否小于5,因此被舍掉了,当然加一个很小的数可以解决这个问题,但是这个数很难选择,小了没效果,大了可能把不应该入的入了。。。要看你输入数据的取值范围