2017年1月21日

嵌入式学习:今天学习了循环结构方面的知识,学习到了一个有关素数的习题。

求100~200间的全部素数:

#include

#include

Int main()

{

Int n,k,I,m = 0;

  For(n= 101;n<=200;n +=2)            //n从100变化到200,对每个n进行判定

  {k=sqrt(n);

   For(i=2;i<=k;i++)

  If(n%i== 0)break;                  //如果n被i整除,终止内循环,此时i

 If(i>=k+1)                          //若i>=k+1,表示n未曾被整除

 {printf(“%d”,n);                   //应确定n 是素数

   m=m+1;                        //m用来控制换行,一行内输出10个素数

}

If(m%10==0)printf(“\n”);              //m 累计到10的倍数,换行

}

Printf(“\n”);

Return 0;

}

由常识,偶数不是素数,所以不必对偶数进行判定,只对奇数进行检查,故外循环变量n从101开始,每次增值2.

你可能感兴趣的:(2017年1月21日)