Perché ogni volta che fai scanf("%c", ...) leggi un solo carattere, e il resto dell'input inserito resta nel buffer, e viene quindi prelevato dalle successive getchar() e scanf, che vengono "soddisfatte" già dalla prima stringa data in input.