📜  从 1 到 1000 的素数 (1)

📅  最后修改于: 2023-12-03 15:06:29.999000             🧑  作者: Mango

从 1 到 1000 的素数

素数是指除了1和本身以外没有其它因数的整数。计算机程序可以通过逐个检查每个整数是否是素数来找出从1到1000的素数。

以下是一个C语言实现的程序:

#include <stdio.h>

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

    printf("1-1000的素数为:\n");

    for(i=2;i<=1000;i++)
    {
        isPrime = 1;
        for(j=2;j<i;j++)
        {
            if(i%j==0) // i可以整除j,说明i不是素数
            {
                isPrime = 0;
                break;
            }
        }
        if(isPrime==1) // 如果isPrime仍然为1,说明i是素数
        {
            printf("%d ", i);
        }
    }

    return 0;
}

该程序先从2开始逐个判断每个数是否为素数。对于每个待判断的整数i,扫描从2到i-1的所有整数j,检查i是否可以整除j。如果可以整除,说明i不是素数,跳出循环。如果扫描完j后isPrime仍然为1,说明i是素数,输出i。

以上是一个常规的实现方法,但是随着数值的增大,循环运算量也随之增大,效率不高。可以采用一些特殊的算法来提高效率,如埃拉托色尼筛法和米勒-拉宾素性检验等。