Return the largest integral value that is not greater than the specified x.
Special value handling: * if x is quiet NaN, quiet NaN is returned. * If x is signaling NaN, quiet NaN is returned and the value of the macro EDOM is stored into errno. * if x is +/-infinity or +/-0, it is returned unmodified.
Examples: floor(0.5) ==> 0.0; floor(-0.5) ==> -1.0