次のプログラムで、規定のアルファベット以外の文字を入力すると、
更に「アルファベットを入力してください」が二回出ます。なぜですか?

#include <stdio.h>

int main(void)
{
 int a,b;
 char ch;

 printf("実行したい演算は\n");
 printf("加算(A)、減算(S)、乗算(M)、除算(D)のどれですか?\n");

do{
printf("アルファベットを入力してください:");
ch=getchar();

}while(ch!='A'&&ch!='S'&&ch!='M'&&ch!='D');

 printf("\n");
 printf("最初の数字を入力してください:");
 scanf("%d",&a);
 printf("二番目の数字を入力してください:");
 scanf("%d",&b);
 if(ch=='A')printf("%d",a+b);
  else if(ch=='S')printf("%d",a-b);
  else if(ch=='M')printf("%d",a*b);
  else if(ch=='D')printf("%d",a/b);
 return 0;
}