В идеале следующий код будет принимать float в представлении IEEE 754 и преобразовать его в шестнадцатеричный
void convert() //gets the float input from user and turns it into hexadecimal
{
float f;
printf("Enter float: ");
scanf("%f", &f);
printf("hex is %x", f);
}
Я не слишком уверен, что происходит не так. Он преобразует число в шестнадцатеричное число, но очень неправильное.
123.1443 gives 40000000
43.3 gives 60000000
8 gives 0
поэтому он что-то делает, я просто не уверен, что.
Помощь будет оценена