serial.print shows wrong float numbers

Thank you for your hints.
I took the above code into my sketch ( I put it into the "loop") compiled it on WIN XP:
I get these results:
3
3.1
3.14
3.142
3.1416
3.14159
3.141593
3.1415927
3.14159274

TEMP= 142768.03 ALTITUDE= -14634452.00m 1-Normdruck= 318159.0 bei 135.00m

then I took the Arduino to WIN7:
first I got the same strange results....
3
3.1
3.14
3.142
3.1416
3.14159
3.141593
3.1415927
3.14159274

TEMP= 142770.59 ALTITUDE= -14627349.00m 1-Normdruck= 316493.2 bei 135.00m
3
3.1
3.14
3.142
3.1416
3.14159
3.141593
3.1415927
3.14159274

TEMP= 142770.70 ALTITUDE= -14626947.00m 1-Normdruck= 316399.8 bei 135.00m
3
3.1
3.14
3.142
3.1416
3.14159
3.141593
3.1415927
3.14159274

TEMP= 20.11 ALTITUDE= 167.00m 1-Normdruck= 1009.5 bei 135.00m
3
3.1
3.14
3.142
3.1416
3.14159
3.141593
3.1415927
3.14159274

TEMP= 20.22 ALTITUDE= 166.80m 1-Normdruck= 1009.5 bei 135.00m

but suddenly the serial out gave correct floating numbers
this is absolutly strange!
I did not compile the code again on WIN7
Could thes line be the problem
Serial.print(getAltitude(Pressure, Temperature));
maybe the output is the pointer to the function?