arr[10] is the 11th element of the array named arr. So you're trying to return a string that doesn't actually exist. This is, as you might imagine, a really bad idea.
arr2[10]=split(arr3);
This is a similar mistake. arr2 has ten elements in it. Here they are:
So how there isn't one called arr2[10]? So when you try to use arr2[10], you're trying to use something beyond the end of your array. That's really bad.
You've not learned enough about arrays to use them safely.
Don't use arrays for this. Arrays are not for beginners. Use vectors.
You would need to create an array that did not get destroyed when the function ends (using new), or create the array in main and pass a pointer to the array into the function.