Problem B: 输出200-299之间的所有素数

Problem B: 输出200-299之间的所有素数

分析

对于隔几个就换行问题,我们利用%来处理,对于相邻数据的间隔问题我们也可以用取余等于1或者2等等的方式处理。

Description

一个整数如果不能被1和自身以外的所有整数所整除,那么这个数是素数。编写程序找出200~299之间的所有素数。

Input

无输入。

Output

200~299之间的所有素数,每8个数就换行。注意:每一行第一个数字(如211 257)前无空格,每一行最后一个数字(如251 293)后面无空格。

Sample Input

Sample Output

211 223 227 229 233 239 241 251
257 263 269 271 277 281 283 293

#include
int main()
{
    int a=0,count=0,m,i;
   
    for(m=200;m<300;m++)
	{
	  for(i=2;i*i<=m;i++)
      {
    	 if(m%i==0)
    	{
	      	break;
    	}
      }	
	     if(i*i>m)//这个的意思就相当关于循环做完,已经判断完成是素数,然后进行输出操作
    	{
	    	count++;
	    	if(count%8==1)
	    	printf("%3d",m);
	    	if(count%8!=1)
	    	printf("%4d",m);
	    	if(count%8==0)
	    	printf("\n");
	    }
    	
      
	}
   
    
    return 0;
}

总结

1、善于利用%对一些数据的间隔和换行做处理。
2、注意利用一些循环结束条件,来完成余下的一些操作。

你可能感兴趣的:(C语言基础学习)