什么是素数


素数是指只能被1和自身整除的正整数。 在自然数中,从2开始,排除了1,2是第一个素数,再往后,3, 5, 7, 11, 13, 17, 19, 23, 29, ... 依次为素数,它们都有一个共同的特点,即除了1和自身以外,不能被其他自然数整除。

求1到100的素数


编程语言中常见使用埃拉托斯特尼筛法(Sieve of Eratosthenes)求素数。 具体做法为:
1. 创建一个布尔数组,标记每个数字是否为素数,初始值全部设为true。
2. 从2开始,将2及其倍数标记为非素数。
3. 对于每个未被标记为非素数的数字,将其标记为素数,并将其倍数标记为非素数。
4. 继续步骤3,直到遍历完所有数字。
这样,最后布尔数组中标记为true的数字就是1到100之间的所有素数。

C语言代码实现


c
include
include
int main() {
// 创建布尔数组标记素数
int is_prime[101] = {0};
for (int i = 2; i <= 100; i++) {
is_prime[i] = 1;
}
// 埃拉托斯特尼筛法
for (int p = 2; p p <= 100; p++) {
if (is_prime[p]) {
for (int j = p p; j <= 100; j += p) {
is_prime[j] = 0;
}
}
}
// 输出素数
printf("1到100之间的素数为:\n");
for (int i = 2; i <= 100; i++) {
if (is_prime[i]) {
printf("%d ", i);
}
}
return 0;
}

点赞 (6803) 收藏 (6803)

40和16英语单词的发音

30英文正确读音