This statement in getts is totally wrong. You are using the constant used to define the array as an index into the array. You need to be using row and col. Is this just a cut and paste error? Anyway, that is undefined behavior. You are not properly filling the array in the first place. It is wrong elsewhere in the program as well. Use the local variables that are being incremented by the for loops. That is the biggest problem I see. Fix that and then see how it works.
Why are you manually specifying 0 and 1 for the column index into the array? What is the point of the embedded for loop then? Everytime operator>> executes the filestream is advancing so you are filling the array incorrectly.
I am not sure how to get the program to read two different columns. I am searching online but have not come across that concept. I am not very familiar with C++, just started learning it. Before I had:
testscores[row][0]
but that wasn't working, so I am trying different things to get it to work. Do you know where I can see an example of code that retrieves info from a file with 20 rows and 2 columns?