4

私は C/C++ を初めて使用するので、基本型についていくつか質問があります。

  1. 演算子 % は float 型または double 型のオペランドには適用できないとどこかで読みました。では、float 型または double 型の変数の割り切れる可能性を確認するにはどうすればよいでしょうか。私は以下のエラーで私のプログラムを示しました:

    #include <stdio.h>
    
    int main()
    {
        double n,k,t,i;
        int j=0;
        scanf("%f %f",&n,&k);
        i=0;
        while(i<n)
        {
            scanf("%f",&t);
            if(t%k==0)   /* error:invalid operands to binary %  */
                j++;
            i++;
        }
        printf("%d",j);
        return 0;
    }
    
  2. 正の整数の範囲が最大 10^9 の場合、どの修飾子を使用する必要がありますか、またはそのような大きな範囲を達成する方法は?

4

5 に答える 5

9

次に、float 型または double 型の変数の割り切れる可能性を確認するにはどうすればよいですか。??`

を使用しfmodます。%整数オペランドでのみ機能します。C は既にライブラリ関数%を提供しているため、浮動小数点値では機能しません。fmod

于 2013-06-22T13:06:12.047 に答える
3

関数fmodとそのファミリを使用します。

于 2013-06-22T13:06:07.980 に答える