=( no worky.. help!

i know i am posting alot but i really need to learn if you dont mind.. but anywayz this is not working for me when i enter the correct value it tells me that it is wrong instead of right.. here is the code....

Aside from not checking whether scanf succeeded or not, there's a problem with comparing floating-point values. The values are approximations so comparision for equality is sketchy at best. What you need to do is compare the difference of user and USER to FLT_EPSILON in float.h:

what is fabs and what is FLT_EPSILON can you please explain thouse commands for me.. sorry but i am still a newbie so if you dont mind explaining it to me in a simple way that i can understand it ... thank you very much

>what is fabs
fabs returns the absolute value of it's argument, just an extra precaution against errors.

>what is FLT_EPSILON
The official definition is the difference between one and the least value greater than 1 that is representable by the floating-point type. How it works doesn't really matter as much as understanding that comparing floating-point values directly is dangerous because they are approximations and may be equal as far as you are concerned, but not equal to the computer. By using EPSILON in this way you can ask the computer "Is this close enough?".