这个是本身编译软件的问题,也不算是属于BUG。那是由于上一个输入输入的函数最后判断输入完毕的回车会在这里生效,而且你写getchar函数也会一同运行,解决办法就是写两个getchar。
换成scanf(" %c", &a)试试。(格式串最前面有一个空格)