/* File: floatio.c */

/* Stampa numero byte occupati e l'intervallo di definizione per tipi: float, double, long double */

#include <stdio.h>

int main(void)
{
  /* costanti reali */
  float x = 152.23;
  double y = 0.0008;
  long double z =7e+20;

  /* output */
  printf("%g\n", x);
  printf("%f\n", x);
  printf("%e\n", x);

  /* output formattato */

  printf("%15.5f\n",x); /* reale che occupa 15 caratteri con 5 decimali */
  printf("%15.5e\n",x); /* reale che occupa 15 caratteri con 5 decimali */
  printf("%15.5g\n",x); /* reale che occupa 15 caratteri con 5 decimali */

  /* input */

  scanf("%g", &x);
  printf("%g\n",x);

  scanf("%lg", &y);
  printf("%g\n",y);

  scanf("%Lg", &z);
  printf("%Lg\n", z);

  return 0;
}

/* output:

*/
