This test program prints "-1.949464 0.000000". Shouldn't it print "0.000000 1.000000" ? zw #include <math.h> #include <stdio.h> int main(void) { printf("%f %f", fdim(2.0, 3.0), fdim(3.0, 2.0)); return 0; }