ふと思ったんだけど文字を入力するのに

char ch;として

scanf("%c", &ch);
ってやるのと

ch = getchar();
ってやるのってどうちがうの?