[C] float VS double

  • float
#include <stdio.h>

int main(void)
{
        int i;
        float sum = 0.0;

        puts("-----------------------");
        puts(" * float * ");
        puts("-----------------------");

        for (i = 0; i < 100; i++)
        {
                sum = sum + 1.7f;
        }

        printf(" float sum = %f \n", sum);
        puts("-----------------------");

        puts(" Output to the second decimal place ");
        printf(" float sum = %.2f \n", sum);
        puts("-----------------------");

        return 0;
        
        /*
        -----------------------
        * float *
        -----------------------
        float sum = 169.999832
        -----------------------
        Output to the second decimal place
        float sum = 170.00
        -----------------------
        */
}
  • double
#include <stdio.h>

int main(void)
{
        int i;
        double sum = 0.0;

        puts("-------------------------");
        puts(" * double * ");
        puts("-------------------------");

        for (i = 0; i < 100; i++)
        {
                sum = sum + 1.7;
        }

        printf(" double sum = %lf \n", sum);
        puts("-------------------------");

        puts(" Output to the second decimal place ");
        printf(" double sum = %.2f \n", sum);
        puts("-------------------------");

        return 0;

        /*
        -------------------------
        * double *
        -------------------------
        double sum = 170.000000
        -------------------------
        Output to the second decimal place
        double sum = 170.00
        -------------------------
        */
}

Reference

Tags:

Categories:

Updated: