title: Number precision error in C
body: <p>Here is a code I wrote:</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  #include &lt;stdlib.h&gt;
  
  int main()
  {
      double num;
      int tmp;
      printf("enter a number!\n");
      scanf("%lf",&amp;num);
      tmp=num*10000;
      printf(" temp=%d\n",tmp);
  
      return 0; 
  }
  </code></pre>
  
  <p>When I enter the number 1441.1441 the result i'm getting is 14411440 instead of 
  14411441 which is obviously the correct result after multiplying my input number by 10000. Can someone help me figure out this problem?</p>