Тернарный оператор ведёт себя странно в Си. В чём в проблема?
вы при инициализации используете ++i,
в итоге  a[0] не инициализирован и состоит из мусора,
так еще и в конце выходите за границы массива
Выходите за границы массивов, т.к. условия стоят в хедере цикла. На последней итерации происходит обращение к 10й ячейке (у вас только 0..9 элементов), а только потом идёт проверка условия и выход из цикла.