C++ 编程题,会的帮帮忙

来源:百度知道 编辑:UC知道 时间:2024/06/17 10:51:03
把100~200之间的所有素数求出,并按每行10个地输出。

#include <iostream>
using namespace std;

int nStart = 100, nEnd = 200; //修改这里可以修改所求质数的范围
int pri[10001] = {0}, nPrime = 0;

bool prime(int x)
{
for(int i = 2; i * i < x; i++) //只用判断到sqrt(x)就够了
if(x % i == 0)
return false;
return true;
}

int main()
{
for(int i = nStart; i <= nEnd; i++)
if(prime(i))
pri[++nPrime] = i;

for(int i = 1; i <= nPrime; i++)
if(i % 10 == 0) //每十个换行
cout << pri[i] << '\n';
else
cout << pri[i] << " ";

return 0;
}