用一循环遍历100~1000间的奇数,直接判断这些奇数是否有1和自身以外的因子,无则确定为素数并输出。用一变量记录输出素数的个数,当个数能被6整除时输出一个换行,否则输出间隔。代码如下:
#include "stdio.h"
int main(int argc,char *argv[]){
int i,l,n;
for(l=0,i=101;i<1000;i+=2){//遍历100~1000间的奇数
for(n=3;n*n<=i;n+=2)//检查有无大于1小于自身的因子
if(i%n==0)//有大于1小于自身的因子则不是素数
break;
if(n*n>i)//没有上述因子则是素数并输出
printf(++l%6 ? "%4d" : "%4d\n",i);//由++l%6控制每行输出6个
}
if(l%6)
printf("\n");
return 0;
}
运行结果如下: