c加加求素数并对所求素数进行排列

请键盘输入任意两个整数,并输出两整数之间的所有素数,每五个数为一行;如输入1和200。

img


#include<iostream>
#include<vector>
using namespace std;

int is_prime(int n)
{
    for (size_t i = 2; i < n; i++) {
        if (n%i == 0) {
            return 0;
        }
    }
    return 1;
}

void get_m_to_n_prime_list(int m,int n , vector<int>& v)
{
    if (m > n) 
        cout << "请输入合法数据,m<n"<<endl;

    for (size_t i = m; i < n; i++)
    {
        if (is_prime(i))
        {
            v.push_back(i);
        }
            
    }
}

void test()
{
    int m, n;
    cout << "请输入两个数" << endl;
    cout << "m:";
    cin >> m;
    cout << "n:";
    cin >> n;

    vector<int> vec;
    get_m_to_n_prime_list(m,n, vec);
    
    for (size_t i = 0; i < vec.size(); i++)
    {
        if (i % 5 == 0) cout << endl;
        cout << vec[i] <<" ";
    }
}

int main()
{
    test();
    return 0;
}