C/C++ 求某个范围内的所有素数

  • Post author:
  • Post category:其他


素数(质数)定义:是指在大于1的自然数中,除了1和它本身以外不再有其他因数(不能被其他数整除)的自然数。

#include<iostream>
using namespace std;
int main()
{
	int n,m,j=0;								//定义j=0
	cin>>n;
	for(int i=2;i<n;i++)						//从2开始直到n-1判断是否为素数
{
		int judge(int x);						//定义判断复数的函数
		m=judge(i);
		if(m>0)
		{cout<<m<<" ";j++;}						//如果是素数j+1
		if(j%10==0)								//当j能被10整除时输出换行
		cout<<endl;
}
}
int judge(int x)										
{
	for(int i=2;i<(x/2)+1||x==2||x==3;i++)		//当x=2||x=3时无法利用通用的方法判断要单独写出来
	{
		if(x%i==0&&x!=2)						//判断是否可以被除1和他本身的数整除
		{return 0;
		break;}
		if(i==x/2||x==2||x==3)					//如果判断到x/2还没有能数能整除她,说明x是素数
		return x;
	}
} 



版权声明:本文为zds6935原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。