"estrarre" il punto decimale da un float, come fare?

lesto:
ok, ero convinto che il c ansi lo supportasse anche per float e double.

Vale anche per il C++ perché % è un operatore vero e proprio del C, cioè fa parte del linguaggio, per i float si usa fmod() che è una funzione di libreria.