#include
#include
int main()
{
int i=1,n=0,m;
while(i<1000)
{
m=i%n;
n++;
if(m==0)
i++;
else
{
printf("1000以内的素数为:%d\t",i);
i++;
}
}
return 0;
}
看你的截图就知道你的代码肯定哪里有问题,程序正常结束运行会返回0的
再看看代码,逻辑完全是错的,如果你不会判断素数的话,可以参考一下我的这篇文章:算法-如何求解质数
#include <stdio.h>
#include<math.h>
int main()
{
int n,i,k,m=0;
for(n=2;n<1000;n=n+1)
{ k=sqrt(n);
for(i=2;i<=k;i++)
{if(n%i==0) break;}
if(i>=k+1) {printf("%d\t",n);
m=m+1;}
if(m%10==0)
printf("\n");
}
return 0;
}
参考一下