#include
#include
void main()
{
int N,m,i,k;
scanf("%d",&N);
for(m=2;m<=N;m++)
{
k=1;
for(i=2;i
if(m%i==0)
k=0;
}
if(k!=0)
printf("%d\n",m);
}
}
这是输入N,然后输出素数的
不知道你说的定义数组指的是什么
#include
main()
{
int a[10000];
long n,i,j;
memset(a,0xff,sizeof(a));
scanf("%ld",&n);
for(i=2;i<=sqrt(n);i++)
if(a[i])
for(j=i+i;j<=n;j+=i)a[j]=0;
for(i=2;i<=n;i++)
if(a[i])
printf("%d ",i);
}