C++输出1000之内的素数

来源:互联网 发布:希腊神话和传说知乎 编辑:程序博客网 时间:2024/05/16 02:10

素数:如果一个大于一的整数,只能被1及其自身整除,那么这个数为素数

1.输出1000之内的素数

#include<iostream>

#include <iomanip>
bool isPrime(int);
using namespace std;
void main()
{
    int count = 0;
    for (int i = 2;i<1001;i++)
    {
        if (isPrime(i))
        {
            count++;
            cout<<setw(4)<<i<<((count%10==0) ? "\n" : "");//注意这里,输出的是空,而不是“ ”
        }
    }
}
bool isPrime(int i)
{
    for(int k = 2;k<=i/2;k++)
    {
        if (i%k==0)
        {
            return false;//return直接退出一个函数
        }
    }
    return true;

}


2.输出前50个素数

void main()
{
    int count = 0;
    int i = 2;
    const int TOTAL= 50;
    while (count<=50)
    {
        if (isPrime(i))
        {
            count++;
            cout<<setw(4)<<i<<((count%10==0) ? "\n" : "");
        }
        i++;
    }
}
bool isPrime(int i)
{
    for(int k = 2;k<=i/2;k++)
    {
        if (i%k==0)
        {
            return false;
        }
    }
    return true;
}