当前位置: 代码迷 >> C++ >> 小白 请问一题目: 不用break和continue 重写上面的代码
  详细解决方案

小白 请问一题目: 不用break和continue 重写上面的代码

热度:4226   发布时间:2013-02-26 00:00:00.0
小白 请教一题目: 不用break和continue 重写下面的代码

#include<iostream>
using namespace std;
int main()
{
int line=0;
char ch;
while(cin.get(ch))
{
if ('Q'==ch)
{
break;
}
if ('\n'==ch)
{
continue;
}
++line;
}
cout<<line<<endl;
}


------解决方案--------------------------------------------------------
这很难么?换个思路就行了,反正你while后面又没做什么

#include<iostream>
using namespace std;
int main()
{
    int line=0;
    char ch;
    while(cin.get(ch))
    {
        if ('Q'==ch)
        {
            cout<<line<<endl;
            return;
        }
        if ('\n'!=ch)
           ++line;
    }
}

------解决方案--------------------------------------------------------
来个更简单的
#include<iostream>
using namespace std;
int main()
{
    int line=0;
    for(char ch; cin.get(ch) && ch != 'Q'; ch != '\n' && ++line)
    {
    }
    cout<<line<<endl;
}
  相关解决方案