用C语言,但不用数组找出2-500范围内所有的素数并输出,10个一行
时间: 2024-11-03 08:16:40 浏览: 20
在C语言中,可以使用循环和条件判断来找出2到500范围内的所有素数。由于数组不是必需的,这里我们采用一个简单的逻辑:
```c
#include <stdio.h>
#include <stdbool.h>
bool is_prime(int num) {
if (num <= 1) return false;
if (num == 2 || num == 3) return true;
if (num % 2 == 0 || num % 3 == 0) return false;
for (int i = 5; i * i <= num; i += 6) {
if (num % i == 0 || num % (i + 2) == 0)
return false;
}
return true;
}
void print_primes(int start, int end) {
int count = 0;
for (int i = start; i <= end; ++i) {
if (is_prime(i)) {
printf("%d ", i);
++count;
if (count % 10 == 0) { // 输出10个数字换行
printf("\n");
}
}
}
printf("\n"); // 结束时打印一个空行
}
int main() {
print_primes(2, 500);
return 0;
}
```
这个程序首先定义了一个`is_prime`函数来检查一个数是否为素数,然后在`print_primes`函数里遍历指定范围内的每个数,如果它是素数就输出,并每输出10个数字换行一次。
阅读全文