Ma tu il codice lo compili e non ci sono errori? Sicuro?
Come hai usato la scanf ?
http://www.cplusplus.com/reference/cstdio/scanf/
Cosa vuol dire quella while usata in quel modo?
Comunque è meglio che utilizzi la fscanf
fscanf(string, MAX, stdin);
per l'input al posto della scanf