OK, I tried this. Why does the second part work but the first doesn't?

Code:
#include <stdio.h>

int main()
{
int i;
 float f;               

 printf( "Enter an decimal integer: " );
 scanf( "%d", &i );    
 printf(" Value in float: %f\n", i);

 printf( "Enter a hex 32-bit float: " );
  scanf( "%x", &f );             
  printf( "Value in decimal: %f\n", f);
 
}