超簡易の電卓を作ってみたつもりなんですけど、どうも想定通りに動きません。
『aを入力→記号を入力→bを入力』という順序の場合、記号を入力する際のscanfが上手く動かないようです。
ただ、『記号を入力→aを入力→bを入力』というように順序を入れ替えるだけで上手く動作するのですが、
この理由は何なのでしょうか?馬鹿な質問で申し訳ないのですが、どなたか答えていただけると嬉しいです。

#include <stdio.h>
int main()
{
int a,b;
char kigou;
printf("aを入力");
scanf("%d", &a);

printf("記号を入力");
scanf("%c", &kigou);

printf("bを入力");
scanf("%d", &b);

switch(kigou){
case '+' :
printf("計算結果は%d", a+b);
break;
case '-' :
printf("計算結果は%d", a-b);
break;
default:
printf("足し算か引き算で正しく入力してね。");
}
return 0;
}