I am wondering that why only number 4.20 showing the number precision error, is there any special reason due to its binary representation?
#include <stdio.h>
int main() {
float a = 4.20;
float b = 3.20;
float c = 5.20;
printf("%f\n",a*100);// 419.999969 -> error
printf("%f\n",b*100);// 320.000000
printf("%f",c*100); // 520.000000
return 0;
}