翻译资格考试

导航

1-100素数的判断方法c语言

来源 :华课网校 2024-08-26 04:35:28

素数,又称质数,指一个大于1的自然数,除了1和它本身外,不能被其他自然数整除。在1-100之间,有如下的素数: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。

那么,如何用C语言判断一个数是否为素数呢?

首先,我们需要了解一个数学定理:如果一个数n不是素数,那么它的因子一定在sqrt(n)以下。因为如果存在一个大于sqrt(n)的因子m,那么n/m一定小于sqrt(n),也就是说,如果在sqrt(n)以下没有找到n的因子,那么它就是素数。

那么,我们可以通过以下步骤来判断一个数是否为素数:

1. 定义一个变量i,从2开始循环,一直循环到sqrt(n)。

2. 将n除以i,如果能整除,说明n不是素数,返回0。

3. 如果i循环到了sqrt(n),还没有找到n的因子,说明n是素数,返回1。

下面是C语言实现代码:

```

#include

#include

int isPrime(int n) {

int i;

if (n <= 1) { //小于等于1的数不是素数

return 0;

}

for (i = 2; i <= sqrt(n); i++) { //循环到sqrt(n)

if (n % i == 0) { //能整除,不是素数

return 0;

}

}

return 1; //是素数

}

int main() {

int i;

for (i = 1; i <= 100; i++) {

if (isPrime(i)) {

printf('%d是素数\n', i);

}

}

return 0;

}

```

以上代码中,isPrime()函数用来判断一个数是否为素数,main()函数则用来循环1-100之间的数,并调用isPrime()函数来判断是否为素数。如果是素数,则输出其值。

分享到

您可能感兴趣的文章

相关推荐

热门阅读

最新文章