直接上代码:

第一份:从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读入相关推荐

  1. [PAT乙级]1033 旧键盘打字(getline()读入)

    旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行中分别给出坏掉的那些键.以及应该输入 ...

  2. c++中关于字符串的读入——cin、getline、get、gtes(查询+思考+总结)

    1.cin读入一个字符: char c;cin>>c; 2.cin读入一个字符串: char s[10];cin >> s;(c风格字符串)    string str;cin ...

  3. C/C++如何整行读入字符串?

    在写代码的过程中,经常要一行一行的读入字符串进行处理,这里我总结了一些方法,供大家参考. 方法一:scanf()读入char[] 使用方法: char str[1024]; scanf("% ...

  4. cin 和 getline 混用中需要注意的问题

    这段时间在刷题过程中遇到一个cin和getline混合使用中的问题,解决之后记录如下: 先来看一段代码 1 #include <iostream> 2 #include <strin ...

  5. PAT甲级1100 Mars Numbers:[C++题解]进制位、使用stringstream类读入

    文章目录 题目分析 题目分析 分析: 使用char型二维数组 names[][5] 存储这些 火星文. ac代码 #include<iostream> #include<sstrea ...

  6. c/c++,字符,字符串,各种方式读入与对空格,回车的处理

    #include<iostream> #include<string> using namespace std; int main() {char a[50],b[50],ch ...

  7. c++getline函数的使用

    getline() // 读入一整行的内容,可以接收空格. 在c++中用cin读入字符串,遇到空格会自动结束,而有些题目需要读入一行的字符串,包括空格.所以这就需要使用getline函数. #incl ...

  8. 【C++】getline函数用法

    cin在输入空格的时候会自动结束输入.相比之下,getline的优点就是在输入字符串的时候可以输入空格.与此同时也有很多种用法. 用法一.getline() #include<iostream& ...

  9. linux命令之awk命令

    awk是一种编程语言,用于在linux/unix下对文本和数据进行处理.数据可以来自标准输入(stdin).一个或多个文件,或其它命令的输出.它支持用户自定义函数和动态正则表达式等先进功能,是linu ...

最新文章

  1. OpenCV支持中文字符输出实现
  2. Flash/Flex学习笔记(4):如何打开网页及Get/Post数据
  3. 怎样在bug管理上节省时间
  4. calabash-android教程,自动化测试工具_Calabash-android调研
  5. .NET Core 在程序集中集成Razor视图
  6. SpringCloud工作笔记102---苞米豆mybitis增强工具
  7. 微信小程序项目笔记以及openId体验版获取问题
  8. 为何要搭建大数据分析平台
  9. 关于socket的简单的客户服务端编程
  10. UCI数据集详解及其数据处理(附148个数据集及处理代码)
  11. PXE启动错误代码一览表
  12. 8大排序算法的稳定和不稳定分析
  13. UG NX二次开发(C#)-分析-测量体对象的体积
  14. Photoshop:如何使图片覆盖在文字上以及一种海报效果实现
  15. 解决使用ssh工具远程连接到服务器上因为网络波动而需要重连的问题
  16. 听老外吐槽框架设计,Why I Hate Frameworks?
  17. 【阿柟碎碎念】暑期集训篇
  18. Android Manifest 权限描述大全
  19. 论人工智能真空感应悬浮熔炼航母特种钢
  20. 二级域名配置以及nginx解析二级域名到html页面

热门文章

  1. SpringBoot项目遇到的一些问题
  2. P2634 [国家集训队]聪聪可可
  3. Eclipse里修改SVN的用户名和密码
  4. SeekBar和RatingBar
  5. vsftp 无法启动,500 OOPS: bad bool value in config file for: anonymous_enable
  6. 转:c# Linq 的分页[转]
  7. 系统带你学习 WebAPIs 第四讲
  8. span里面插入文字
  9. leetcode -39组合总数
  10. 转 Java对日期Date类进行加减运算一二三