为了账号安全,请及时绑定邮箱和手机立即绑定

浮点书输出有误

浮点书输出有误

C
qq_不睡觉的怪叔叔_0 2016-10-08 15:07:56
#include<stdio.h>int main(){ float fl; printf("Please input a float number:\n"); scanf("%f", &fl); printf("The input is %f or %e\n", fl,fl); return 0;}为什么输出的是21.290001 后面多了一个1呢?
查看完整描述

2 回答

?
mrs_empress

TA贡献11条经验 获得超2个赞

在c语言中 1)用 scanf() 函数输入 double 类型的变量时,转换说明中的转换字符(占位符)只能用 lf,即%lf,写成 %f 无法正确输入double型数据;

你试试看


查看完整回答
1 反对 回复 2016-10-11
?
望远

TA贡献1017条经验 获得超1032个赞


C语言里float表示的是一个近似值

查看完整回答
反对 回复 2016-10-08
  • qq_不睡觉的怪叔叔_0
    qq_不睡觉的怪叔叔_0
    什么意思,难道这一点数值的不同不会导致程序的错误?
  • 望远
    望远
    你要知道,计算机里不可能精确表示一个数,它只是一个近似值,你关闭程序,打开重新运行可能就是不同的输出了。
  • 2 回答
  • 0 关注
  • 1380 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信