Código
no las inicialices así, si no con strcpy().
char nombres[5][50]={};
Y otro consejo, ordena mejor el código para que entre mejor a la vista, por que he visto cosas chungas como for's juntos, que a ojos del compilador no es importante, pero a ojos del programador a la ora de corregir errores....