title: For what reason printf does not correctly display the float?
body: <p>I hoped that in all cases showed <code>2.33</code>, however, for what reason only in the second case this happened?</p>
  
  <pre><code>printf("Without cast: %0.2f\n", 7 / 3); // Whitout cast: 0.00
  printf("With cast: %0.2f\n", (float) 7 / 3); // With cast: 2.33
  float x = 7 / 3;
  printf("With var: %0.2f\n", x); // With var: 2.00
  </code></pre>
  
  <p>I just noticed this behavior with float. If I use an integer variable, it does not happen.</p>