#include #include void separa (double, char *, int *, double *); int main (void) { double valore; char segno; int parte_int; double parte_dec; printf ("input un numero decimale: "); scanf ("%lf", &valore); separa (valore, &segno, &parte_int, &parte_dec); printf ("in ingresso: %f\n", valore); printf ("segno: %c\n", segno); printf ("parte intera: %d", parte_int); printf ("parte decimale: %f", parte_dec); return 0; } void separa (double num, char *signp, int *intp, double *decp) { double val_abs; if (num < 0) *signp = '-'; else if (num == 0) *signp = ' '; else *signp = '+'; val_abs = fabs (num); *intp = floor (val_abs); *decp = val_abs - *intp; }