为什么用double 532.1转换就有问题,用float就可以

P5705 【深基2.例7】数字反转

33491250l @ 2021-10-31 15:27:28

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        int g,s,b,x;
        float z;
        Scanner src=new Scanner(System.in);
        double a=src.nextDouble();
        g=(int) (a%10);
        s=(int) (a/10%10);
        b=(int)(a/100);
        x=(int) (a*10%10);
        z=(float) (x+g*0.1+s*0.01+b*0.001);
        System.out.println(z);
    }
}

by ud2_ @ 2021-10-31 15:36:36

虽然题目说是浮点数,但因为要求绝对精确,所以不适合真的用浮点数。


|