Trying to add 2 floats an int and the char '-' to char array

These two lines:

itoa(randominteger,testarray,10);       // Generate ascii for number and place in testarray[]
strcpy(testarray,tmp);                        // Overwrite testarray with tmp

Your code trashes testarray[] with the second line above.