C Tutorial/printf scanf/scanf float

Материал из C\C++ эксперт
Перейти к: навигация, поиск

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.