a865386512 2014-12-28 14:40 采纳率: 28.6%
浏览 1629

C语言的一个小问题 求解答

图片说明
如题 我的代码是这样
#include
int main()
{
double x,y;
printf("输入数据:");
scanf("%lf",&x);

if(x<1)

    y=x;

else if(x>=1&&x<=10) 

    y=2*x-1;

else if(x>10)

    y=3*x-11;

printf("输出结果:x=%lf     y=%lf\n",x,y);
return 0;

}

程序没有出现错误。可是当我输入12.23 时候,给我的结果不是y=25.689999 而是
y=25.69 为什么结果小数点的第二位四舍五入了呢

  • 写回答

5条回答 默认 最新

  • threenewbee 2014-12-28 14:42
    关注

    3x-11=12.23*3-11本来就是25.69,不存在四舍五入。

    评论

报告相同问题?

悬赏问题

  • ¥30 Unity接入微信SDK 无法开启摄像头
  • ¥20 有偿 写代码 要用特定的软件anaconda 里的jvpyter 用python3写
  • ¥20 cad图纸,chx-3六轴码垛机器人
  • ¥15 移动摄像头专网需要解vlan
  • ¥20 access多表提取相同字段数据并合并
  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算
  • ¥15 powerbuilder中的datawindow数据整合到新的DataWindow
  • ¥20 有人知道这种图怎么画吗?
  • ¥15 pyqt6如何引用qrc文件加载里面的的资源