题目
本题是谭浩强《c语言程序设计》第六章第一题
题目:用筛选法求100之内的素数。
以下是本篇文章正文内容,欢迎朋友们进行指正,一起探讨,共同进步。——来自考研路上的lwj
一、解题思路
思路:
//1.素数是什么:素数就是除了1和本身没有其他因子的数。
//2.什么是筛选法?筛选法就是把一个数组中不满足条件的元素给划掉,留下没划掉的元素
二、代码部分
1.引入库
代码如下(示例):
#include<stdio.h>
2.主函数部分
代码如下(示例):
int main() {
int a[100] = { 0 };
int i,j;
for (i = 0; i < 100; i++)
a[i] = i + 1;//先创建一个数组,令其有100个数,这100个数分别是从1-100.
a[0] = 0;//1不是素数,先把1划掉,即置为0
for (i = 1; i < 100; i++)
{
if (a[i] == 0)continue;
for (j = 2; j < i; j++)
{
if (a[i] % j == 0)a[i] = 0;
}
}
for (i = 0; i < 100; i++)
{
if (a[i] != 0)printf("%d\n", a[i]);
}
return 0;
}
执行结果
输出:
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97