基本思想:把m作为被除数,将2—INT()作为除数,如果都除不尽,m就是素数,否则就不是。
可用以下程序段实现:
voidmain()
{intm,i,k;
printf("pleaseinputanumber:\n");
scanf("%d",&m);
k=sqrt(m);
for(i=2;i<k;i++)
if(m%i==0)break;
if(i>=k)
printf("该数是素数");
else
printf("该数不是素数");
}
将其写成一函数,若为素数返回1,不是则返回0
intprime(m%)
{inti,k;
k=sqrt(m);
for(i=2;i<k;i++)
if(m%i==0)return0;
return1;
}
扩展资料:
100->200之间的素数的个数,以及所有的素数xa0xa0
#include<stdio.h>xa0xa0
#include<math.h>xa0xa0
intmain()xa0xa0
{xa0xa0
inta,m,k,i;xa0xa0
a=0;xa0xa0
for(i=101;i<=200;i++)xa0xa0
{xa0xa0
for(k=2;k<i;k++)xa0xa0
if(i%k==0)break;xa0xa0
if(k>=i)xa0xa0
a++;xa0xa0
}xa0xa0
printf("%d\n",a);xa0xa0
for(i=101;i<=200;i++)xa0xa0
{xa0xa0
for(k=2;k<i;k++)xa0xa0
if(i%k==0)break;xa0xa0
if(k>=i)xa0xa0
a++;xa0xa0
if(k>=i)xa0xa0
printf("%d",i);xa0xa0
}xa0xa0
printf("\n");xa0xa0
return0;xa0xa0
}
©本文版权归作者所有,任何形式转载请联系我们:xiehuiyue@offercoming.com。