您的位置:首页 > 其它

用筛选法求出100以内的素数

2015-05-03 16:53 323 查看
#include<iostream>
#include <cmath>
#define  N 100
void PrintPrime(int a[], int n)
{
	int i;
	for (i = 2; i <= n;i++)
	{
		if (a[i]!=0)
		{
			printf("%d\t", a[i]);
// 			cout << a[i] << "\t"    
// 			error C2065 : “cout” : 未声明的标识符
		}
	}
	printf("\n");
}
void SiftPrime(int a[], int n)
{
	int i, j;
	for (i = 2; i <= n;i++)
	{
		a[i] = i;
	}
	for (i = 2; i <= sqrt(n);i++)
	{
		for (j = i+1; j <= n;j++)
		{
			if (a[i] != 0 && a[j] != 0&&a[j]%a[i]==0)
			{
				a[j] = 0;
			}
		}
	}
}
int main()
{
	int a[N + 1];
	SiftPrime(a, N);
	PrintPrime(a, N);
	system("pause");
	return 0;
}
<img src="http://img.blog.csdn.net/20150622153534857?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMjI1MTI1MzM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: