Das passiert jedem mal, vor allem, wenn man nicht allzu viel mit C macht, und selbst wenn... Da ist eine strenge Sprache wie Java doch von Vorteil, da kann sowas nur passieren, wenn man Booleans vergleicht, und wann macht man das schon.
Im übrigen, die übersichtliche Version wäre ja die folgende:
Code:
int sgn(float x) {
return (x<0)?-1:((x>0)?1:0));
}