要求一个区间中素数的个数,可以使用以下的方法:
isPrime()
来判断一个数是否为素数。该函数接受一个参数n,返回一个布尔值,表示n是否为素数。在主函数中,输入一个区间的上下界,使用循环遍历这个区间的每一个数,判断它是否是素数,如果是素数,则计数器加1。
最后输出计数器的值,即为这个区间中素数的个数。
下面是一个示例代码:
#include <stdio.h>
#include <stdbool.h>
#include <math.h>
// 判断一个数是否为素数
bool isPrime(int n) {
if (n <= 1) {
return false;
}
int sqrt_n = sqrt(n);
for (int i = 2; i <= sqrt_n; i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
int main() {
int lower, upper;
int count = 0;
printf("请输入一个区间的上下界:");
scanf("%d %d", &lower, &upper);
for (int i = lower; i <= upper; i++) {
if (isPrime(i)) {
count++;
}
}
printf("这个区间中素数的个数为:%d\n", count);
return 0;
}
示例运行结果:
请输入一个区间的上下界:1 100
这个区间中素数的个数为:25