欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

找寻100以内所有的质数 - 用C语言实现

最编程 2024-08-08 20:35:41
...

以下是使用C语言编写的找出100以内素数的程序:

#include <stdio.h>

int main() {
    int i, j, is_prime;

    printf("2 "); // 输出2是素数

    for(i = 3; i < 100; i += 2) { // 从3开始,步长为2,因为偶数除了2之外不可能是素数
        is_prime = 1; // 假设i是素数

        for(j = 3; j < i; j += 2) { // 从3开始,步长为2,因为偶数除了2之外不可能是素数
            if(i % j == 0) { // 如果i可以被j整除,则i不是素数
                is_prime = 0;
                break;
            }
        }

        if(is_prime) { // 如果i是素数,则输出
            printf("%d ", i);
        }
    }

    return 0;
}

程序中使用了两个嵌套循环,外层循环遍历3到100之间的奇数,内层循环判断当前的数字是否为素数。如果一个数字不能被除1和本身以外的数字整除,则它是一个素数。程序中首先输出2,然后在外层循环中从3开始遍历,每次递增2,以此来避免偶数。在内层循环中也是从3开始遍历,每次递增2。如果一个数字能被一个小于它的奇数整除,则它不是素数,将is_prime置为0,跳出内层循环。如果最终is_prime的值仍然为1,则说明当前数字是素数,输出即可。

注意,这个程序只能找到100以内的素数。如果您需要找到更大的素数,可以将循环的上限修改为相应的数字。