perchè sbagli la logica.. devi vedere se un elemento è contenuto in un array no?

quindi, o lo scorri in avanti o lo scorri all'indietro.. decidi tu..

codice:
bool verifica(int a[], int pos, int numero, int dim)
{
	if(pos >= dim) return false; //scorrendo in avanti ho superato il limite..
	else
	{
		if(a[pos] == numero) return true; //l'elemento c'è...
		else
		{
			return verifica(a, ++pos, numero, dim); //cerco nella pos successiva
		}
	}
	
}

int main()
{
	int n=5;

	int aa[]={1,9,6,7,8};

	if(verifica(aa, 0, 6, n)) cout<<"si c'è"<<'\n';
	else cout<<"no, non c'è"<<'\n';

	int x =0;
	cin>>x;

	return 0;
}