可以看看我这个问题出在哪吗?

#include
#include
#include
bool op(int num);
using namespace std;
int main()
{
int n,x, m = 0, * a;
int b[11];
cin >> n;
a = new int[n];
for (int i = 0; i < n; i++)
{
cin >> a[i];
}
for (int i = 0; i < n; i++)
{
if (op(a[i]) == 1&&a[i]!=1)
{
b[m] = a[i];
m++;
}
}
cin >> x;
if (op(x) == 1&&x!=1)
{
b[m] = x;
m++;
}
sort(b, b + m);
for (int i = 0; i < m; i++)
{
if (i != m - 1)
cout << b[i] << " ";
else
cout << b[i];
}
}
bool op(int num)
{
int tmp = sqrt(num);
for (int i = 2; i <= tmp; i++)
if (num % i == 0)
return 0;
return 1;
}

img