寻找“水王”01
Posted anill
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了寻找“水王”01相关的知识,希望对你有一定的参考价值。
1.设计思想
假设ID都在sw.txt中
首先,按行读取ID
其次,设置beforeID,记录前一个ID是什么,判断当前ID和beforeID是否相同;如果相同,得到水王ID;如果不同,将当前ID给beforeID,接着读取下一行。
最后,读取比较完最后一个ID,得到水王。
(本题假设水王存在,所以不考虑没有水王)
2.代码实现
//2016-5-24 李娜 //根据ID号,寻找发帖数超过一半的“水王” #include<iostream> #include<fstream> #include<String> using namespace std; void inputID()//读取ID { string id,beforeID=""; string sw; ifstream infile("e:\\\\sw.txt"); if (!infile) { cout<<"文件打开出错!"<<endl; } while (getline(infile,id))//读取每行的ID { if (id==beforeID) { sw=id; } else { beforeID=id; } } cout<<"“水王”的ID是:"<<sw<<endl; } int main() { inputID(); return 0; }
3.测试截图:
4.个人总结
其实上课已经说出了关键在于“两两消除”,也没什么难的。
我认为getline这个函数很适合在这里,毕竟如果不用就得一个一个字符读入,然后判断是不是有空格、回车什么的。
其实本来我是想用字符串数组存放ID的,但是写着太长了,就直接读一个比一个吧。
以上是关于寻找“水王”01的主要内容,如果未能解决你的问题,请参考以下文章