What I do in cases like this, if I can't step through the code in a debugger, is to start writing "debug" information to a log file, showing where in the code it is, and anything relevant (comments, values of variables etc) that might help me find out why the code isn't doing what I expect it to.
So in this case since the code in red presumably isn't working, add an fprintf before that line that writes relevant information out to a file (which you've previously opened with fopen()), perhaps printing i, array[i], array[highest], the result of the calculation and anything else relevant you can think of. Don't worry that you have to get it all right first time; you won't, and as you go back over the code and the log file you may realise you could use something else from the code, so just add that extra bit in and rerun the program.
As you read the code try to determine what you think the code SHOULD BE doing, and use the log file to determine what the code IS ACTUALLY doing. Then by comparing the two you should be able to work out what is wrong.