我认为我的代码有效。但是,它输出 01111E5 或 17B879DD 或类似的东西。
有人可以告诉我为什么。
我知道我设置了 P 的限制而不是 10,001。我的代码就是这样,因为我从 3 开始,跳过了素数 2。
#include <iostream>
bool prime (int i)
{
bool result = true;
int isitprime = i;
for(int j = 2; j < isitprime; j++) ///prime number tester
{
if(isitprime%j == 0) result = false;
}
return result;
}
int main (void)
{
using namespace std;
int PrimeNumbers = 1;
int x = 0;
for (int i = 3 ; PrimeNumbers <=10000; i++)
{
if(prime(i))
{
int prime = i;
PrimeNumbers +=1;
}
}
cout<<prime<<endl;
system ("pause");
return 0;
}