问题及代码:
/*
*Copyright(c) 2014 烟台大学计算机学院
*All rights reserved.
*文件名称:test.cpp
*作者:尚 月
*完成日期:2014年 12 月 05 日
*版本号:V1.0
*
*问题描述: 用筛选法求N以内的素数
*输入描述:输入筛选范围
*程序输出:输出筛选范围内的所有素数
*/
#include <iostream>
#include <cmath>
using namespace std;
bool isPrime(int);
int main ()
{
int n,i;
cin>>n;
for(i=2; i<=n; i++)
{
if (isPrime(i))
cout<<i<<endl;
}
return 0;
}
bool isPrime(int n)
{
bool prime=true;
int j=int(sqrt(n));
for (int i=2; i<=j; i++)
{
if (n%i==0)
{
prime=false;
break;
}
}
return prime;
}
运行结果:
100
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97