大家帮将解答一下,这个我不会……C++语言

题目描述
输入 n(n\le100)n(n≤100) 个不大于 100000 的整数。要求全部储存在数组中,去除掉不是质数的数字,依次输出剩余的质数。

输入格式

输出格式

输入输出样例
输入 #1
5
3 4 5 6 7
输出 #1
3 5 7

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

bool isPrime(int m) {
    if (m == 0 || m == 1)
        return false;
    for (int i = 2; i <= sqrt(m); ++i)
        if (m % i == 0)
            return false;
    return true;
}

int main() {
    int n;
    cin >> n;
    int *a = new int[n];
    for (int i = 0; i < n; ++i)
        cin >> a[i];
    for (int i = 0; i < n; ++i)
        if (isPrime(a[i]))
            cout << a[i] << ' ';
    cout << endl;
    return 0;
}

img

你每次都直接发一个问题,让人家给你写好,然后你在复制粘贴到网站上,试问这样有何意义?你倒是说哪里不会啊,判断质数还是什么?