Why is it printing -0 for 0?

$ cat temp.c
#include <stdio.h>
main() {
double d;
d = 1;
printf("%.18e\n",100 - 100*d);
}
$ cc temp.c
$ a.out
-0.000000000000000000e+00
$

shades of the 7090, possibly developed by the same person.
--
Ron Hardin
[email]rhhardin@mindspring.com[/email]

On the internet, nobody knows you're a jerk.