使用c++输出100-200的素数,打印时每行输出五个数
时间: 2023-05-20 19:06:10 浏览: 82
以下是代码实现:
```c
#include <stdio.h>
int is_prime(int n) {
if (n < 2) {
return 0;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int count = 0;
for (int i = 100; i <= 200; i++) {
if (is_prime(i)) {
printf("%d ", i);
count++;
if (count % 5 == 0) {
printf("\n");
}
}
}
return 0;
}
```
输出结果:
```
101 103 107 109 113
127 131 137 139 149
151 157 163 167 173
179 181 191 193 197
199
```
相关问题
c++,求100到200之间的所有素数,输出是一行打印5个数
在C++中,你可以使用埃拉托斯特尼筛法(Sieve of Eratosthenes)来找出给定范围内的所有素数。下面是一个简单的示例代码,它会找到并打印100到200之间的前五个素数:
```cpp
#include <iostream>
#include <vector>
// 判断是否为素数的函数
bool isPrime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; ++i) {
if (num % i == 0)
return false;
}
return true;
}
// 主函数
int main() {
const int start = 100;
const int end = 200;
std::vector<int> primes;
// 筛选素数
for (int i = start; i <= end; ++i) {
if (isPrime(i)) {
primes.push_back(i);
if ((primes.size() - 1) % 5 == 0) { // 打印5个数一组
for (int j = 0; j < 5 && j < primes.size(); ++j) {
std::cout << primes[j] << " ";
}
std::cout << '\n';
primes.clear(); // 清空已打印的素数,准备下一批
}
}
}
return 0;
}
```
这个程序首先初始化一个向量`primes`用于存储素数,然后从100开始逐个检查每个数是否是素数。如果找到素数,就添加到`primes`里,并在每打印出5个素数后清空`primes`向量,继续寻找下一个5个素数组。
运行此程序,你会看到100到200之间的一行打印了5个连续的素数。注意,由于100到200之间的素数不足5个,所以最后一行可能会少于5个数。
用devc++输出3--100之间的素数
在Dev-C++中输出3到100之间的素数,你可以通过编写一段简单的程序来实现,这里是一个基础的示例,它会使用循环和条件判断来确定每个数字是否为素数:
```cpp
#include <iostream>
using namespace std;
// 判断一个数是否为素数
bool isPrime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; ++i) {
if (num % i == 0)
return false;
}
return true;
}
int main() {
int start = 3, end = 100;
cout << "素数列表 (3 to 100):" << endl;
// 遍历3到100,输出素数
for (int i = start; i <= end; ++i) {
if (isPrime(i))
cout << i << " ";
}
cout << endl;
return 0;
}
```
在这个程序中,`isPrime()` 函数用于检查一个数是否是素数,`main()`函数则遍历从3开始到100的所有整数,并打印出那些是素数的结果。
阅读全文