如果孤独感 发表于 2021-10-16 12:26:07

帮我看看哪里错了

float result;
int ratio = 7;
result = 720000*(1 - (float)ratio / 10);

为什么打印result之后结果为:216000.015625

傻眼貓咪 发表于 2021-10-16 14:49:25

浮点数精度问题,用 double 提升精度#include <stdio.h>

int main(){
    double result;
    double ratio = 7;
    result = 720000*(1 - ratio / 10);
    printf("%.2f", result);
    return 0;
}216000.00

如果孤独感 发表于 2021-10-16 19:47:13

本帖最后由 如果孤独感 于 2021-10-16 19:51 编辑

1
页: [1]
查看完整版本: 帮我看看哪里错了