Arrays are by default passed as references so remove the ampersands(&). Also your function does not always return a value. You should have a return for if it succeeds and fails not only if it fails.
you removed the ampersands and the brackets([]). You need either brackets([]) after or an asterisk(*) before variable name. int getInventory (string u[], int v[], double w[], double x[], int y[]) or int getInventory (string (&u)[], int (&v)[], double (&w)[], double (&x)[], int (&y)[]) or int getInventory (string *u, int *v, double *w, double *x, int *y) or ]int getInventory (string *&u, int *&v, double *&w, double *&x, int *&y) should work.
When you pass an array you are passing the address of it not the actual block of memory. So when you modify an array in a function you modify it outside also.