sprintf() will not work with floats in the Arduino environment.
How about using a simple function to output the float sent to as it as an argument. In the function check the value of the float and if it is less than 10 then print a space before it or if the value may exceed 100 then check twice and print the appropriate number of spaces.