title: Why we can't use operator % for float and double type operands?
body: <p>I am new to C/C++, so I have a couple of questions about a basic type:</p>
  
  <ol>
  <li><p>I have read somewhere that the operator % can't be applied to float or double type operands.
  Then how can I check the divisibility of float or double type variables? I have shown my program with error below:</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  
  int main()
  {
      double n,k,t,i;
      int j=0;
      scanf("%f %f",&amp;n,&amp;k);
      i=0;
      while(i&lt;n)
      {
          scanf("%f",&amp;t);
          if(t%k==0)   /* error:invalid operands to binary %  */
              j++;
          i++;
      }
      printf("%d",j);
      return 0;
  }
  </code></pre></li>
  <li><p>If a positive integer has a range up to 10^9, which qualifier should I use or how to achieve such a large range?</p></li>
  </ol>