问题 3774 --200以内的素数(完善程序)

3774: 200以内的素数(完善程序)★★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 347  解决: 219
[提交][状态][命题人:]

题目描述

编制用筛选法求1~n(n<=200)以内素数的程序。

1)将范围内的数都标示为素数;

2)设定i为2;

3)依次寻找最小的素数;

4)将i的所有倍数都设为非素数;

5)重复2-4直到i大于n;

6)按照每行10个打印出所有的素数。

#include<iostream>
#include<iomanip>
using namespace std;
const int n=200;
int a[n+10]={0};
int main()
{
	for(int i=2;i<=n;i++)
	    if(__(1)__)
	      for(int j=i+i;j<=n;___(2)__)
	        a[__(3)__]=1;//将i的所有倍数都设为非素数
	int t=0;
	for(int i=2;i<=n;i++) // 打印所有素数
		if(a[i]==0){
		    cout<<setw(5)<<i;
		    t++;
		    if(__(4)_____) cout<<endl;
		} 
	return 0;    
}

输入

输出

提示

来源

[提交][状态]