c++ 怎么结束while循环
#include<iostream>intmain(){intsum=0,value=0;while(std::cin>>value)sum+=value;std::co...
#include <iostream>
int main()
{
int sum = 0, value = 0;
while (std::cin >> value)
sum += value;
std::cout << "sum is" << sum << std::endl;
return 0;
}
用的是vs ,输入ctrl+z 就直接结束了,没有结束while循环,执行下一条语句 展开
int main()
{
int sum = 0, value = 0;
while (std::cin >> value)
sum += value;
std::cout << "sum is" << sum << std::endl;
return 0;
}
用的是vs ,输入ctrl+z 就直接结束了,没有结束while循环,执行下一条语句 展开
展开全部
C++的流控制里面有eof()成员,可以用来标定输入完成。
Ctrl+z可能和windows或者VS的快捷键,弄一块了,所以直接给退了。下面是完整点的流控:
int ival;
while(cin>>ival,!cin.eof()){
if(cin.bad()) //input stream is corrupted; bail out
throw runtime_error("IO stream corrupted");
if(cin.fail()){ //bad input
cerr<<"bad data,try again";
cin.clear(istream::goodbit); //reset the stream
cin.ignore(std::numeric_limits<std::streamsize>::max(),'\n');
//ignore bad input
continue;
}
//ok to process ival
}
看看能否用上,记得加头文件不然报错
追问
恩 我再研究下 c++ primer里有好多例子都这么写
展开全部
只要输入,就会执行while语句。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream>
int main()
{
int sum = 0, value = 0;
while (std::cin >> value)
{
// 使用条件退出循环
if(value < 0)
break;
sum += value;
}
std::cout << "sum is" << sum << std::endl;
return 0;
}
int main()
{
int sum = 0, value = 0;
while (std::cin >> value)
{
// 使用条件退出循环
if(value < 0)
break;
sum += value;
}
std::cout << "sum is" << sum << std::endl;
return 0;
}
追问
这个我刚试了 还是跳出来 谢谢啦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
while (std::cin >> value)
{
if(value == 10086) break;
sum += value;
}
改成这样
只要你输出10086 就退出了。。。
{
if(value == 10086) break;
sum += value;
}
改成这样
只要你输出10086 就退出了。。。
追问
这个我也试了 也跳出来 谢谢
追答
不客气
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询