现在给定一个数字区间,X星大学学生需要计算其中有多少个素数。 请你编写一个程序,计算区间中素数的个数。 多组输入用C语言。
时间: 2024-02-21 07:56:45 浏览: 75
好的,这是一个比较基础的算法题目,需要用到素数的判断。
可以使用以下代码进行素数判断:
```c
int is_prime(int n) {
if (n <= 1) {
return 0;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
```
然后,我们可以使用以下代码来计算区间中素数的个数:
```c
#include <stdio.h>
int is_prime(int n) {
if (n <= 1) {
return 0;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int count_primes(int left, int right) {
int cnt = 0;
for (int i = left; i <= right; i++) {
if (is_prime(i)) {
cnt++;
}
}
return cnt;
}
int main() {
int left, right;
while (scanf("%d %d", &left, &right) == 2) {
printf("%d\n", count_primes(left, right));
}
return 0;
}
```
这样,我们就可以输入多组数字区间,计算其中素数的个数了。
阅读全文