用c语言编写程序,按每行5个数打印输出100以内所有素数
时间: 2024-10-14 15:09:03 浏览: 42
为了按每行5个数的方式打印100以内的素数,我们可以使用嵌套循环以及一些基本的素数检查算法。以下是使用C语言实现的一个示例:
```c
#include <stdio.h>
#include <stdbool.h> // 使用bool类型
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 limit, int count_per_row) {
int row_count = (limit - 1) / count_per_row + 1; // 计算总行数
int start = 0;
for (int i = 1; i <= row_count; ++i) {
int end = start + count_per_row > limit ? limit : start + count_per_row; // 每行最后一个数的边界
for (int j = start; j < end; ++j) {
if (is_prime(j)) {
printf("%d ", j);
}
}
printf("\n"); // 换行
start = end; // 移动到下一行开始位置
}
}
int main() {
int limit = 100;
int count_per_row = 5;
print_primes(limit, count_per_row);
return 0;
}
```
这个程序首先定义了一个辅助函数`is_prime()`用于检查数字是否为素数。`print_primes()`函数按照每行5个数的方式打印100以内的素数,通过控制每行开始和结束的索引来达到这一目标。
在`main()`函数中,我们将限制条件设置为100,每行显示5个素数,然后调用`print_primes()`函数。
运行此程序会输出100以内所有素数,每行5个数。
阅读全文