本文目录一览:
c语言中如何求素数
思路:所谓素数是指只能被1和自身整除的数叫作素数,判断素数就可以从2到该数减一依次判断能否整除该数,如果能则不是素数,否则就是素数。
参考代码:
#includestdio.h
int isp(int n)//判断是否是素数,是返回1,否则返回0
{
int i;
for(i=2;in;i++)
if(n%i==0) return 0;
return 1;
}
int main()
{
int a;
scanf("%d",a);
if(isp(a))
printf("%d是素数\n",a);
else
printf("%d不是素数\n",a);
return 0;
}
/*
输出:
89
89是素数
*/
如何求C语言素数?
如果一个数是素数,只要判断他是否能被2到这个数的开方之间的数整除就行了。
int flag=0;
if(m==2){ //先判断是不是2
flag=1;
}
else{
for(int i=2;i=sqrt(m);i++){
flag=1;
if(m%i==0){ //不是素数
flag=0;
break;
}
}
}
return (flag==1)?m:-1; //判断是否为1,为1输出m,否则输出-1 ,-1表示不是素数
如果是求某个范围的素数,可以连续调用这个方法,上面是常规的方法,还有更好的方法自己去查一下。
C语言素数怎么表示
#includestdio.h
#includemath.h
intmain()
{
intx,i,j=0,k;
for(x=101;x=200;x++)
{
for(i=2,k=0;i=sqrt(x);i++)
if(x%i==0)
{
k++;
break;
}
if(k==0)
{
printf("%d",x);
j++;
}
}
printf("\n100到200之间有%d个素数\n",j);
}
扩展资料
100-200之间的素数的个数,以及所有的素数
#includestdio.h
#includemath.h
intmain()
{
inta,m,k,i;
a=0;
for(i=101;i=200;i++)
{
for(k=2;ki;k++)
if(i%k==0)break;
if(k=i)
a++;
}
printf("%d\n",a);
for(i=101;i=200;i++)
{
for(k=2;ki;k++)
if(i%k==0)break;
if(k=i)
a++;
if(k=i)
printf("%d",i);
}
printf("\n");
return0;
}