判断101-200之间有多少个素数,并输出所有素数。 //判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
时间: 2024-12-14 12:27:00 浏览: 9
要在101到200之间找出所有的素数并统计数量,可以按照你提供的思路,编写一个C语言程序。以下是简单的代码示例:
```c
#include <stdio.h>
#include <math.h>
int is_prime(int num) {
if (num <= 1) return 0; // 1不是素数
if (num == 2 || num == 3) return 1; // 2和3是素数
if (num % 2 == 0 || num % 3 == 0) return 0; // 偶数和3的倍数不是素数
int i = 5;
while (i * i <= num) { // 只需检查到√n即可
if (num % i == 0 || num % (i + 2) == 0)
return 0; // 如果能被i或i+2整除,不是素数
i += 6; // 因为所有素数都可以表示成6k±1的形式,每次增加6
}
return 1;
}
int main() {
int count = 0; // 计数器
for (int num = 101; num <= 200; num++) {
if (is_prime(num)) {
printf("%d ", num); // 输出素数
count++;
}
}
printf("\n在101到200之间有%d个素数。\n", count);
return 0;
}
```
这个程序首先定义了一个辅助函数`is_prime`,用于检查一个数是否为素数。然后在`main`函数中遍历101到200,对每个数调用`is_prime`,如果是素数就输出并计数。
阅读全文