c++循环反复多次

c++循环重复多次
#include<iostream>
#include<stdio.h>
using namespace std;
class program7
{
private:
char choice;
public:
void menu()
{
choice='a';
while(choice!='T')
{
cout<<"输入‘T’并按Return键结束..."<<endl;
choice=fgetc(stdin);
}
}
};
void main()
{
program7 p7;
p7.menu();
}

运行却是:
c++循环反复多次
为什么“输入‘T’并按Return键结束...”会出现两次呢?

------解决方案--------------------
引用:
引用:C/C++ code?123cout<<"输入‘T’并按Return键结束..."<<endl;choice=fgetc(stdin);fflush(stdin);
为什么要清掉缓存呢?不清它就会多运行一遍?不太懂,求具体点的。

fgetc你的回车被读入缓冲区了 ,不要忘你还按回车