Цитата(Tanchik @ 8.11.2009 9:12)

а должна без изменений вывести последнию строчку
Из условия задачи это не следует.
Хотя, с моей точки зрения, программа все равно работает неправильно: она должна, обнаружив, что количество строк нечетно, сообщить об этом пользователю и не проводить никакой обработки массива. Впрочем, от программы, демонстрирующей тот или иной способ обработки данных, это не требуется. Так же, как IMHO не требуется, чтобы она вообще компилировалась.
А вообще, нужно сразу полностью формулировать условие, а не дополнять его уже после того, как предъявлено готовое решение.
PS. Кстати, посмотрел код и так и не понял, откуда там могут браться нули. Да и количество строк в опубликованном варианте как раз нечетное.