c++中有关数组和指针求素数

设计程序输出一维数组中值为素数的元素,具体要求如下:

(1)定义函数bool prime(int n),判断整数n是否为素数。

bool prime(int n); // n是素数返回真,否则返回假

(2)定义函数print按每行5个元素的方式输出一维数组中值为素数的元素。

void print(int *p ,int n); /指针p传递一维数组,n传递一维数组元素个数/

(3)在主函数中定义一维数组,并初始化,通过调用上述函数实现程序功能。

如下:

#include <iostream>
using namespace std;
bool prime(int n)
{
    if (n < 2) return false;
    for (int i = 2; i < n; i++)
    {
        if (n % i == 0)
            return false;
    }
    return true;
}

void print(int* p, int n)
{
    int i, count = 0;
    for (i = 0; i < n; i++)
    {
        if (prime(p[i]))
        {
            count++;
            printf("%d", p[i]);
            if (count % 5 == 0)
                printf("\n");
            else
                printf(" ");
        }
    }
}

int main()
{
    int a[100];
    //a中保存1-100的数字
    for (int i = 0; i < 100; i++)
        a[i] = i+1;
    print(a, 100);
    return 0;
}