编程打印 2 ~ 170 之间的所有素数。要求每行输出 13 个素数。用c语言编写。
时间: 2024-11-23 09:39:21 浏览: 4
在C语言中,我们可以使用循环和条件判断来实现这个功能。首先,我们需要定义一个函数来检查一个数是否是素数。然后,我们将遍历从2到170的每个数,并按照每行输出13个素数的要求打印。以下是完整的代码:
```c
#include <stdio.h>
#include <stdbool.h>
// 判断一个数是否是素数
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;
}
void print_primes(int start, int end, int count_per_line) {
int current_count = 0;
for (int i = start; i <= end; i++) {
if (is_prime(i)) {
printf("%d ", i);
current_count++;
if (current_count % count_per_line == 0) {
printf("\n");
current_count = 0; // 每行结束换行
}
}
}
if (current_count > 0) { // 如果最后一行不满13个数字,补空格直到满一行
while (current_count < count_per_line) {
printf(" ");
current_count++;
}
printf("\n");
}
}
int main() {
int start = 2, end = 170, count_per_line = 13;
print_primes(start, end, count_per_line);
return 0;
}
```
运行此程序,它将打印出2到170之间,每行13个素数的结果。
阅读全文