1float
2f (float a1)
3{
4  union { float f; int l; } fl1;
5  fl1.f = a1;
6  return fl1.l ? 1.0 : a1;
7}
8