C Tutorial/printf scanf/scanf float
Floating-Point Input: %e %g %f
#include <stdio.h>
int main(void)
{
float fp1 = 0.0f;
float fp2 = 0.0f;
float fp3 = 0.0f;
int value_count = 0;
printf("Input:\n");
value_count = scanf("%e %g %f", &fp1, &fp2, &fp3);
printf("Return value = %d", value_count);
printf("\nfp1 = %f fp2 = %f fp3 = %f\n", fp1, fp2, fp3);
return 0;
}
Input: 23 3 2 Return value = 3 fp1 = 23.000000 fp2 = 3.000000 fp3 = 2.000000
Floating-Point Input: %f
#include <stdio.h>
int main(void)
{
float fp1 = 0.0f;
float fp2 = 0.0f;
float fp3 = 0.0f;
int value_count = 0;
printf("Input:\n");
value_count = scanf("%f %f %f", &fp1, &fp2, &fp3);
printf("Return value = %d", value_count);
printf("\nfp1 = %f fp2 = %f fp3 = %f\n", fp1, fp2, fp3);
return 0;
}
Input: 2 3 2 Return value = 3 fp1 = 2.000000 fp2 = 3.000000 fp3 = 2.000000
The printf and sscanf conversions for floating-point numbers
% Conversion Uses Notes %f float printf only. %lf double scanf only. %Lf long double Not available on all compilers.