用C语言写找出200内素数的代码
时间: 2024-11-27 08:10:13 浏览: 22
在C语言中,我们可以编写一个简单的程序来找出指定范围内的素数。下面是一个基本的示例,它使用了一个常见的“筛法”算法——埃拉托斯特尼筛法(Sieve of Eratosthenes)。这个方法通过遍历并标记每个数字,如果它是素数,则将其所有的倍数都标记为非素数。
```c
#include <stdio.h>
#include <stdbool.h>
// Function to check if a number is prime
bool is_prime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0)
return false;
}
return true;
}
// Function to find primes within a given range
void find_primes_in_range(int start, int end) {
printf("Prime numbers between %d and %d are:\n", start, end);
for (int i = start; i <= end; i++) {
if (is_prime(i))
printf("%d ", i);
}
printf("\n");
}
int main() {
// Set the range
int limit = 200;
find_primes_in_range(2, limit);
return 0;
}
```
在这个代码里,`is_prime()`函数检查一个数字是否是素数,`find_primes_in_range()`则在给定范围内找出所有素数并打印它们。注意,为了效率,我们只需要检查到`sqrt(num)`,因为一个合数必定有小于等于它的平方根的因数。
阅读全文