要求一個區間中素數的個數,可以使用以下的方法:
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