C 语言中寻找素数的方法
素数是一个只能被 1 和它本身整除的正整数。在 C 语言中,有多种方法可以找出素数。
方法 1:从 2 到根号 n 遍历
最直接的方法是从 2 到数字 n 的平方根遍历。对于每个数字 i,我们检查它是否能被比它小的任何数字整除。如果没有,则它是素数。
#include <stdio.h> int is_prime(int n) { if (n <p><strong>方法 2:埃拉托斯特尼筛法</strong></p> <p>埃拉托斯特尼筛法是一种更有效的方法,可以找到给定范围内的所有素数。</p> <p>该算法从一个包含所有数字的数组开始。然后,它从 2 开始,并标记数组中的所有 2 的倍数。然后,它从 3 开始,并标记数组中所有 3 的倍数,但不包括 2 的倍数。此过程一直持续到给定范围内的最高数字。</p> <p>最后,数组中未被标记的数字是素数。</p> <pre class="brush:php;toolbar:false">#include <stdio.h> #include <stdlib.h> int main() { int n; printf("输入要查找素数的范围上限:"); scanf("%d", &n); // 创建一个包含所有数字的数组 int *numbers = (int *)malloc(sizeof(int) * (n + 1)); for (int i = 0; i </stdlib.h></stdio.h>
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。