#include
int main()
{
int m,n,i,d,a[10000],g=2,count=0,k,j;
scanf("%d %d",&m,&n);
if(m>=n)
{
d=m;
m=n;
n=d;
}
for(k=m; k<=n; k++)
{
/* if(m>=2)
g=m;*/
for(i=g;i
if(k%i==0)/*这里表示K这个不是一个素数*/
break;
}
if(i>=sqrt(k))/*这里表示K这个是一个素数*/
{
count++;
a[count]=k;
}
}
}
for(j=1;j<=count;j++)
printf("%d\n",a[j]);
return 0;
}
#include
#include
int main()
{
int m,n,i,d,a[10000],g=2,count=0,k,j,flag;
scanf("%d %d",&m,&n);
if(m>=n)
{
d=m;
m=n;
n=d;
}
for(k=m; k<=n; k++)
{
flag=1;
for(i=2;i
if(k%i==0)
{
flag=0;
break;
}
}
if(flag==1)
a[count++]=k;
}
printf("=====");
for(j=0;j
printf("=====\n");
return 0;
}
a 没有必要10000, 100就够了
for(i=g;; i++)
你这样无限制了, i肯定 不需要超过sqrt(n) ,
所以 for( i=g; i <= sqrt(n); i++)
如果为了提高效率 int sqrtValue = sqrt(n);
for (i=g; i<=sqrtValue; i++)
素数算法没看对不对,自己看吧