Ok ... I took a look.
Unfortunately as I read through the code I reformatted some of it, tweaked it here and there, so by the time I eventually ran the thing, my code no longer resembles the original very much.
On the other hand - I do now understand this problem pretty well, so please vinci65812301, if you'd like to post the very latest version of your code, I'll take another look.
cout << "Begin file to array" << endl;
int i = 0;
while (inFile >> n[i].no)
{
++i;
}
The program will read the first integer into n[0].no
and then attempt to read // into the next integer. Because it found a forward slash instead of an integer, the input fails and the loop ends.
Edit: One more comment. I see no reason for the fstream to be passed as a parameter to any of the functions. Each function receives the name of the file, which is all that is needed in order to create a local ifstream or ofstream as required.