解答;
#include<stdio.h>
#include<stdbool.h>
int a[2000]={2};//定义a来存储素数
static int count=1;
bool adjust(int value)
{
int i;
for(i=0;i<count;i++)
{
if(value==2)//如果输入的值是2,则2是素数,返回true
return true;
if(value%a[i]==0)//如果后面的数能被之前所找到素数整除,则它也是素数
return false;
}
a[count++]=value;//将是素数的存入a中
return true;
}
int main(int argc, const char *argv[])
{
int j,i;
for(i=2;i<2000;i++)//2~2000
{
adjust(i);
}
for(j=0;j<count;j++)
{
printf("%d\t",a[j]);//输出
}
printf("\n");
return 0;