- /********************************************
- * 0--100内所有的素数,筛选法; *
- *********************************************/
- #include<stdio.h>
- void main()
- {
- printf("0--100所有的素数\\n");
- int i, j, k=0, a[100]; // 定义一个100的数组,值为1代表为素数,值为0代表非素数。
- for (i = 0; i < 100; i++) a[i] = 1; //先把这一百个数全都定义为素数,然后再筛选。
- for (i = 2; i < 100; i++) //先筛选出2的倍数,然后在筛选3的倍数,以此类推。
- { //当筛选第i个数时,只需要从i*i开始筛选,因为i前面的倍数已经被筛出;
- for (j = i*i; j < 100; j += i)
- a[j] = 0;
- }
- j = 0;
- for (i = 2; i < 100;i++)
- if (a[i])
- {
- printf("%-3d", i);
- j++;
- if (j == 8) //*********************//
- { // 这个语句非常重要 //
- j= 0; //*********************//
- printf("\\n");
- }
- }
- printf("\\n");
- }
- //该片段来自于http://www.codesnippet.cn/detail/2808201410351.html
来源: http://www.codesnippet.cn/detail/2808201410351.html