Im trying to get only the number after the dot in a number
float number;
printf("Enter a real number:\n");
scanf("%f", &number);
int integerPart = (int)number;
int fractionalPart = (int)((number -(float)integerPart) *1000);
printf("The fractional part: %d\n", fractionalPart);
when i put 256.589 i get output of 588 why?