Каков необходимый минимум знаний для junior'а/стажера (с++) и где найти работу студенту?
Прочитайте десяток книжек по си++ и напишите тот же десяток приложений, а потом уже задавайтесь этим вопросом.
Давайте рассуждать логически. Вы студент без опыта работы. Работодатель это знает. Что он может с вас потребовать в качестве знаний? Базовое знание языка, понимание алгоритмов в рамках учебной программы и знание рахных технических дисциплин в рамках курса. Вот и получается, что единственное, чем вы можете заинтересовать работодателя "оставляет желать лучшего". Вы могли бы попробывать заинтересовать работодателя тем, что вы "быстро учитесь", но судя по оценкам и это не так. Так что мой вам совет - проявите усердие в учебе. Если вы хотите стать качественным программистом, то пробелы в математике и других технических дисциплинах все-равно придется зачищать. Но после универа это придется делать в свое свободное время.
И кстати раньше третьего курса лучше не работать. На третьем курсе вероятность вылететь сильно меньше чем на втором. С другой стороны, если устроится на 4-ом курсе, то к выпуску может не хватить стажа. Выпустится из универа без опыта работы - это вообще немного фейл.