2

Cで200万までのすべての素数の合計を見つける問題を解決しています.私は絶えず間違った答え(1179908154)を得ていますが、C++で同じコードを書いたとき、それは正しい答え(142913828922)を与えました. なぜそうなのか教えてください、ありがとう。

これが私のコードです

void main()
{
    int i,j;
    unsigned long long sum;

    for(sum=2,i=3;i<=2000000;i+=2)
    {
        for(j=3;j*j<=i;j++)
            if(i%j==0)
                break;
        if(j*j>i)
            sum+=i;
    }
    printf("%d",sum);
}

私はWindows 7、32ビットを使用しており、GNU GCC v4.7.1を使用しています

4

2 に答える 2