编写程序,按每行5个数打印输出100以内的所有素数,c语言实现
时间: 2024-12-29 15:32:40 浏览: 11
在C语言中,我们可以创建一个函数来检查一个数字是否为素数,然后遍历1到100之间的数字,每打印5个素数换一行。以下是相应的代码实现:
```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 limit) {
int count = 0;
for (int i = 2; i < limit; i++) {
if (is_prime(i)) {
printf("%d ", i);
count++;
// 当计数到达5时换行并清零计数
if (count == 5) {
printf("\n");
count = 0;
}
}
}
// 打印完最后一行不足5个的素数
if (count > 0) {
printf("\n");
}
}
int main() {
print_primes(100);
return 0;
}
```
这段代码首先定义了一个辅助函数`is_prime`来判断一个数是否为素数,接着在`print_primes`函数中遍历1到100,每当找到一个素数就打印出来,并在达到5个素数后换行。如果最后还有剩余的素数未打印,会在结束后单独换行。
阅读全文