素数是仅能被1和本身整除的数。
我们可用一个循环使需要判断的数从2开始一直到它本身进行“除”验证即可判断。程序如下,
#include
int isp(int m) //定义一个判断素数的函数
{
int i;
for(i=2;i
return 1; //若有某一个数能被整除,说明此数不是素数“返回0”,若没有能被整除的,说明它是素数“返回1”
}
void main()
{
int i,j;
for(i=2,j=0;i<100;i++) //设定判断数值的范围,从2到99,因为1和100不用考虑,此处你也可以把范围自行设定,
if(isp(i)) //调用素数判断函数isp(),若返回值为“1”,证明是素数,执行下列运算,返回为“0”,则进行下一个for循环。
{
j++;
printf("\n第%d素数是:%d\n",j,i);
}
}
运行得知 1到100区间内 总共有25个素数。
判断素数
int n;
bool flag = false;
for (int i=2;i
if (m%i == 0)
{
flag = true;
break;
}
}
产生随机数同1楼
使用拉宾米勒算法 具体百度之