title: C float initialization result is unexpected
body: <p>Visual Studio 2019 Community
  float variable is not what I initialize it to.
  I made it less precise in hopes of avoiding truncation.
  Is this not "controllable"?</p>
  
  <p>tried to force init to round in other ways</p>
  
  <pre><code>int main()
  {
      // where did my 6 go?
      float b = 80.123456F;
      printf("b:[%f]\n", b);
  
      // rounds up
      float c = 80.1234569F;
      printf("c:[%f]\n", c);
  
      // rounds up
      float d = 80.1234561F;
      printf("d:[%f]\n", d);
  
  
      // appends a 1
      float e = 80.12345F;
      printf("e:[%f]\n", e);
  
      // prints what's initialized
      float f = 80.123451F;
      printf("f:[%f]\n", f);
  
      // prints what's initialized
      float g = 80.123459F;
      printf("g:[%f]\n", g);
  }
  </code></pre>
  
  <pre><code>b:[80.123459]
  c:[80.123459]
  d:[80.123459]
  e:[80.123451]
  f:[80.123451]
  g:[80.123459]
  </code></pre>
  
  <p>I had started with the debugger and wrote this to meet SO reqs.
  In my case, the debugger matched the prints</p>