入门级的标准解法如下:
#include <iostream>
#include <vector>
using namespace std;
vector<int> ivec;
bool isPrime(int number)
{
bool result = true;
for (int i = 2; i < number; i++)
{
if (number % i == 0)
{
result = false;
break;
}
}
return result;
}
void generateNPrime(int N)
{
int count = N;
int number = 2;
while (count)
{
if (isPrime(number) == true)
{
count--;
ivec.push_back(number);
}
number++;
}
}
void main()
{
generateNPrime(100);
copy(ivec.begin(), ivec.end(), ostream_iterator<int>(cout, " "));
}
bool isPrime(int number)
{
bool result = true;
for (int i = 2; i <= number >> 1; i++)
{
if (number % i == 0)
{
result = false;
break;
}
}
return result;
}
bool isPrime(int number)
{
bool result =