La verdad no he pillado lo que quieres decir.
A ver si lo entiendo por que mi cerebro es medio loco y se va por las ramas XDD
Dices que luego de introducir a, b y c te sale:
a -Bucle yupiiiii
b -Bucle yupiiiii
c -Bucle yupiiiii
-Bucle yupiiiii
... y no te vuelve a pedir mas?
Pues si es eso no tengo ni idea. Pero mi teoría es que puede ser el compilador o la verdad no tengo ni idea.
Pero te voy a decir que a mi si me funciona. a mi el bucle no se interrumpe hasta que pongo '0' (cero)
O incluso el problema sea ese !='0' pero si no pones algo ahí se va a salir tras mostrar los primeros números
Es que no se si te he entendido bien y por eso no se que decirte XD.
prueba cambiar el cero por otro símbolo como *
O si no tienes que trabajar exclusivamente con getchar el scanf te puede hacer el mismo trabajo pero con mas control.
Prueba activar el estándar c99 con -std=c99. O a ver que venga un capo de la programación y nos explique que pasa XDD