Правильно: ученик Днепропетровска и ученик г. Днепропетровска. Географическое название, употребленное с родовым наименованием город, выступающее в функции приложения, согласуется с определяемым словом, то есть склоняется, если топоним русского, славянского происхождения или представляет собой давно заимствованное и освоенное наименование.
Правильно: школу окончил сорок один ученик.
Верно: в кружок ходит 2021 ученик.
Корректно: Ученик, как губка, все впитывает.
Правильно: Оценка не должна зависеть от того, посетил или не посетил ученик все занятия.
Само по себе использование слов ученик и учитель в одном предложении ошибкой не является. Но для точного ответа на вопрос, есть ли в предложении ошибка, нужно видеть это предложение.
Да, только не забудьте о пробелах: Ученик, который учится без желания, – это птица без крыльев.
Оба варианта оформления приемлемы.