[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
-------------------------
*/
}