> Сам я хорошо знаю PHP и Паскаль (Делфи). Неплохо Javascript и Си
Учить тому, что знаешь не очень хорошо — плохая затея однозначно.
Чтобы учить PHP и JS у людей должно быть понимание того, как работает HTTP, веб-сервера, что такое вёрстка и ещё много-много других моментов. Я преподавал в институте конкретно эти вещи и сталкивался именно с тем, что С НУЛЯ понять даже не то, чтобы сам PHP (сам язык-то достаточно простой — я не спорю!), а именно суть происходящего в веб-программировании достаточно сложно, если студент не знает, что такое клиент, сервер, протокол и тому подобные вещи. Даже простейшая отправка формы на сервер хоть и пишется элементарно, по факту тянет за собой кучу (пусть и простейших) понятий и если студент с ними не знаком, то простота самого языка тут уже вообще ничего не решает — для него это всё равно всё выглядит как магия. А использовать PHP просто как консольный Си-подобный язык это какая-то сомнительная затея, как по мне.
Delphi устарел — тут нечего обсуждать.
Остаётся Си — его и берите. В тех объёмах, в которых Вы успеете студентов натаскать, он принципиально не сложней других языков — это миф, который гуляет десятки лет, жертвой которого стал и я сам в своё время. Вы же не будете их заставлять исходники ядра Linux ковырять или драйвера какие-нибудь. Плюс для изучения Си не нужно знать по части ИТ на самом деле НИЧЕГО вообще. Берёте обычный текстовый редактор с подсветкой синтаксиса, gcc (mingw под windows) и вперёд колбасить примеры из K&R, компилируя их командой cc test1.c. Если у вас семестров и учебных часов много, то можно потом плавненько слезть на C# — студенты уже будут понимать логику работы программы и вообще смысл и суть происходящего, синтаксис в целом там похож, а Вы просто покажете, как алгоритмы цеплять к кнопочкам и списочкам. Если часов ещё больше, то можно копнуть и в ASP.NET итд итп. Возможно есть смысл начать сразу с C# — это будет быстрей и эффективней. Но если Вы сами его знаете плохо, то не стоит — начинайте с С и параллельно подтягивайте свои знания C#.
С++ я бы ковырять не стал — даже простейшая задача создания формы с 2-мя полями и 1 кнопкой даже для человека хорошо понимающего С решается не так уж просто и не особо логично — опять же нужно обладать кучей дополнительных знаний — WinAPI, MFC или Qt, ООП на приличном уровне. Для простейшего уровня C# достаточно объяснить им самые основы ООП на примере кнопок и списков и всё — простейшие программы уже можно писать.