求素数,用vector存储的实现方法
时间:2020-10-27 12:18:29|栏目:C代码|点击: 次
PS:如有不足之处,还望指正!
// tentotwo.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"
#include <iostream>
#include <vector>
using namespace std;
void GetPrimer(int n, vector<int>& vet)
{
for (int i = 2; i <= n; i++)
{
vet.push_back(i);
}
vector<int>::iterator ite = vet.begin();
while (ite != vet.end())
{
vector<int>::iterator tmpite = ite + 1;
while (tmpite != vet.end())
{
if ((*tmpite)%(*ite) == 0)
{
tmpite = vet.erase(tmpite);
}
else
{
tmpite ++;
}
}
ite ++;
}
}
int _tmain(int argc, _TCHAR* argv[])
{
vector<int> vet;
GetPrimer(100, vet);
vector<int>::iterator ite = vet.begin();
while (ite != vet.end())
{
cout << *ite << " ";
ite ++;
}
cout << endl;
return 0;
}
复制代码 代码如下:
// tentotwo.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"
#include <iostream>
#include <vector>
using namespace std;
void GetPrimer(int n, vector<int>& vet)
{
for (int i = 2; i <= n; i++)
{
vet.push_back(i);
}
vector<int>::iterator ite = vet.begin();
while (ite != vet.end())
{
vector<int>::iterator tmpite = ite + 1;
while (tmpite != vet.end())
{
if ((*tmpite)%(*ite) == 0)
{
tmpite = vet.erase(tmpite);
}
else
{
tmpite ++;
}
}
ite ++;
}
}
int _tmain(int argc, _TCHAR* argv[])
{
vector<int> vet;
GetPrimer(100, vet);
vector<int>::iterator ite = vet.begin();
while (ite != vet.end())
{
cout << *ite << " ";
ite ++;
}
cout << endl;
return 0;
}
上一篇:C语言实现简单通讯录
栏 目:C代码
下一篇:c++11&14-STL要点汇总
本文标题:求素数,用vector存储的实现方法
本文地址:http://www.codeinn.net/misctech/16239.html