Pessoal, pesquisei e consegui entender o que acontece...
Se no primeiro getchar, fora do "for", simplesmente der enter, sem digitar nenhum caracter, o funcionamento do "for" será correto.
Se digitar um caracter, na função getchar, fora do "for", o primeiro loop, quando j==10, não executará o getchar() "de dentro do for";
Se digitar cinco caracteres, quando entrar no "for" enquanto j <=50 , não executará o getchar() "de dentro do for";
Então, resumindo, o problema estava e digitar um caracter e depois o enter, fora do "for";