В начале был цикл вайл:

n=n0;
while(cond)
{
//... что-то с участием array[n]
n--;
}

Потом планы изменились, и я переделал это в цикл фор:

for(n=0;n<n0;n++)
{
// то же самое
}

Потом думаю -- что-то цикл бесконечным стал.

ОКАЗАЛОСЬ

я забыл убрать n--;

Так он и принимал значения -- то 0, то -1.