#include <iostream>
using namespace std;
int main(void)
{
int temp = -1;
while ( !(cin >> temp) || (temp > 3 || temp < 1) )
{
cout << "请输入一个1-3的数字并用回车键来确定" << endl;
cout << "1.销售部门\t" << "2.研发部门\t" << "3.财务部门" << endl;
if(cin.fail()) cin.clear();
cin.sync();
}
}
代码如上. 按理说输入一个非数字应该会清空输入缓冲区后提示我再次输入才对.. 但是变成了死循环. 初学者 麻烦各位帮帮看看 感激不尽