fishyou 发表于 2020-11-8 10:06:26

float问题

#include <stdio.h>

main()
{
        float grade;
        printf("请输入一个分数:");
        scanf("%f",&grade);
        printf("grade=%f\n",grade);
       


}


运行如上程序之后,输入85.1,结果:grade=85.099998 为什么不是grade=85.100000

shooan 发表于 2020-11-8 10:11:48

因为浮点书也是用二进制表示的,有些数字用二进制表示,只能表示个大概。
想了解更多,可以搜索一下 IEEE 754 这个标准
页: [1]
查看完整版本: float问题