使用getline读入
直接上代码:
第一份:从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 294.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; 就可以停止了。
使用getline读入相关推荐
- [PAT乙级]1033 旧键盘打字(getline()读入)
旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行中分别给出坏掉的那些键.以及应该输入 ...
- c++中关于字符串的读入——cin、getline、get、gtes(查询+思考+总结)
1.cin读入一个字符: char c;cin>>c; 2.cin读入一个字符串: char s[10];cin >> s;(c风格字符串) string str;cin ...
- C/C++如何整行读入字符串?
在写代码的过程中,经常要一行一行的读入字符串进行处理,这里我总结了一些方法,供大家参考. 方法一:scanf()读入char[] 使用方法: char str[1024]; scanf("% ...
- cin 和 getline 混用中需要注意的问题
这段时间在刷题过程中遇到一个cin和getline混合使用中的问题,解决之后记录如下: 先来看一段代码 1 #include <iostream> 2 #include <strin ...
- PAT甲级1100 Mars Numbers:[C++题解]进制位、使用stringstream类读入
文章目录 题目分析 题目分析 分析: 使用char型二维数组 names[][5] 存储这些 火星文. ac代码 #include<iostream> #include<sstrea ...
- c/c++,字符,字符串,各种方式读入与对空格,回车的处理
#include<iostream> #include<string> using namespace std; int main() {char a[50],b[50],ch ...
- c++getline函数的使用
getline() // 读入一整行的内容,可以接收空格. 在c++中用cin读入字符串,遇到空格会自动结束,而有些题目需要读入一行的字符串,包括空格.所以这就需要使用getline函数. #incl ...
- 【C++】getline函数用法
cin在输入空格的时候会自动结束输入.相比之下,getline的优点就是在输入字符串的时候可以输入空格.与此同时也有很多种用法. 用法一.getline() #include<iostream& ...
- linux命令之awk命令
awk是一种编程语言,用于在linux/unix下对文本和数据进行处理.数据可以来自标准输入(stdin).一个或多个文件,或其它命令的输出.它支持用户自定义函数和动态正则表达式等先进功能,是linu ...
最新文章
- OpenCV支持中文字符输出实现
- Flash/Flex学习笔记(4):如何打开网页及Get/Post数据
- 怎样在bug管理上节省时间
- calabash-android教程,自动化测试工具_Calabash-android调研
- .NET Core 在程序集中集成Razor视图
- SpringCloud工作笔记102---苞米豆mybitis增强工具
- 微信小程序项目笔记以及openId体验版获取问题
- 为何要搭建大数据分析平台
- 关于socket的简单的客户服务端编程
- UCI数据集详解及其数据处理(附148个数据集及处理代码)
- PXE启动错误代码一览表
- 8大排序算法的稳定和不稳定分析
- UG NX二次开发(C#)-分析-测量体对象的体积
- Photoshop:如何使图片覆盖在文字上以及一种海报效果实现
- 解决使用ssh工具远程连接到服务器上因为网络波动而需要重连的问题
- 听老外吐槽框架设计,Why I Hate Frameworks?
- 【阿柟碎碎念】暑期集训篇
- Android Manifest 权限描述大全
- 论人工智能真空感应悬浮熔炼航母特种钢
- 二级域名配置以及nginx解析二级域名到html页面