使用getline读入
2015-08-10 22:44
281 查看
直接上代码:
第一份:从cin 读入多行数字,每行2个。当输入完毕后,按2次回车结束
结果:
第二份:从文本中读入数字,知道结束
data.txt:
注:以上代码经典之处在于getline()的停止之处使用了if(str.length()==0) break; ,否则输入将永无止境。,但是在文本的读入就可以不用这句话。
比如:
第一份:从cin 读入多行数字,每行2个。当输入完毕后,按2次回车结束
#include<iostream> #include <cstdio> #include <sstream> #include <string> #include <vector> #include <iterator> #include <cmath> #include <fstream> using namespace std; void main() { string str; vector<float> result; while(getline(cin,str,'\n')) { if(str.length()==0) break; stringstream strstream(str); int n,m; strstream>>n; strstream>>m; float sum=n; float n2=n; for(int i=1;i<m;i++) { n2=sqrt(double(n2)); sum+=n2; } result.push_back(sum); } for (vector<float>::iterator vi=result.begin();vi!=result.end();++vi) { printf("%.2f\n",*vi); } }
结果:
81 4 2 2 94.73 3.41 请按任意键继续. . .
第二份:从文本中读入数字,知道结束
data.txt:
81 4 2 2
#include<iostream> #include <cstdio> #include <sstream> #include <string> #include <vector> #include <iterator> #include <cmath> #include <fstream> using namespace std; void main() { ifstream infile("data.txt"); if(!infile) cout<<"cannot open this file"; string str; vector<float> result; while(getline(infile,str,'\n')) { stringstream strstream(str); int n,m; strstream>>n; strstream>>m; float sum=n; float n2=n; for(int i=1;i<m;i++) { n2=sqrt(double(n2)); sum+=n2; } result.push_back(sum); } for (vector<float>::iterator vi=result.begin();vi!=result.end();++vi) { printf("%.2f\n",*vi); } }
注:以上代码经典之处在于getline()的停止之处使用了if(str.length()==0) break; ,否则输入将永无止境。,但是在文本的读入就可以不用这句话。
比如:
#include<iostream> #include <string> using namespace std; void main() { string str; while(getline(cin,str,'\n')) cout<<str<<endl; }读入将无止境,当加上if(str.length()==0) break; 就可以停止了。
相关文章推荐
- 关于指针结构体函数中指针变量的赋值&的问题思路
- rsync和inotify-tools
- azkaban源码解读工作流状态Status(一)
- 设计模式在游戏中的应用--模板方法(七)
- js语法基础1
- JAVA class文件中的符号引用
- 高负载web服务器linux内核参数调整
- Http协议和安卓开发
- MySQL优化方案
- Matrix详解
- 苹果开发 笔记(59)UIButton
- 另类总结BRD,MRD,PRD到底是干嘛用的,有啥区别。
- C语言中的未定义行为
- muduo::Connector、TcpClient分析
- 线程锁
- Webstorm 10.0.4 配置
- UVALive 5545 Glass Beads
- Python绘制excel表格到邮件正文区并发送脚本实例
- 百度推荐发布公告:上线广告变现工具
- mac中快速启动dock中程序