注册 登录
编程论坛 VC++/MFC

C++中,循环输出数字,跳出循环的问题

wlhdhn 发布于 2011-07-26 14:22, 746 次点击
各位大侠:
我程序大概是这样的:
int n=2,i;
while(n)
{
    cout<<endl<<"n: "<<n<<endl;
    while(cin>>i)
      cout<<i<<"  ";
    --n;
}
我是通过输入字母,跳出while(cin>>i)循环的 ,但是这样的话,第二次外层循环即n=1时,就无法给i赋值了,其余的语句(如输出n值)仍能照常进行,请问各位大侠,怎么才能第二次外层循环时,能正常赋值给i啊?不胜感激!!
2 回复
#2
握id卡2011-07-26 22:36
加个cin.sync()
int n=2,i;
while(n)
{
    cout<<endl<<"n: "<<n<<endl;
    if(cin>>i)
      cout<<i<<"  ";
    else
        cin.clear();
    cin.sync();
    --n;
}
#3
wlhdhn2011-07-27 16:20
谢谢楼上,问题解决了!
1