怎么办网站,网站建设有哪些基本流程,中国建筑集团招聘,校园二手交易网站建设方案读取数量不定的输入数据 似乎是一个很实用的东西#xff1f;
问题#xff1a;
我们如何对用户输入的一组数#xff08;事先不知道具体有多少个数#xff09;求和#xff1f;
这需要不断读取数据直至没有新的输入为止。#xff08;所以我们的代码就是这样设计的#x…读取数量不定的输入数据 似乎是一个很实用的东西
问题
我们如何对用户输入的一组数事先不知道具体有多少个数求和
这需要不断读取数据直至没有新的输入为止。所以我们的代码就是这样设计的让它能一直读取数据直到没有新输入再求和
代码参考
#includeiostreamint main()
{int sum 0, value 0;while (std::cin value)sumvalue;std::cout sum std::endl;return 0;
}我们只用一个while(std::cinvalue)就解决了这个问题。
解释
输入运算符接受一个istream作为其左侧运算对象接受一个对象作为其右侧运算对象。
它从给定的istream读入数据并存入给定对象中
它将返回其左侧运算对象作为其计算结果。
也就是说std::cinvalue返回的是std::cin。
重点当使用一个istream对象作为条件时其效果是检测流的状态。
如果流是有效的即流未遇到错误那么检测成功。当遇到文件结束符end-of-file)或遇到一个无效输入时例如读入的值不是一个整数istream对象的状态会变为无效。处于无效状态的istream对象会使条件变为假。
因此我们的while循环会一直执行直至遇到文件结束符或输入错误。
从键盘输入文件结束符
那么我们怎样才能达到输入停止的效果呢这当然也很重要。
当从键盘向程序输入数据时对于如何指出文件结束不同操作系统有不同的约定。
在Windows系统中输入文件结束符的方法是CtrlZ按住Ctrl的同时按Z键然后按Enter。
在UNIX系统中包括Mac OS X系统中文件结束符输入是用CtrlD。 这只是一个简单的例子这种读取数量不定的输入数据的方式可以用在更复杂的程序中很有用。