zoukankan      html  css  js  c++  java
  • stringstream字符串流

     

    例题详解

    題目:输入的第一行有一个数字 N 代表接下來有 N 行資料,每一行資料里有不固定個數的整數(最多 20 個,每行最大 200 個字元),請你寫一個程式將每行的总和印出來。

    輸入:

    3
    1 2 3
    20 17 23 54 77 60
    111 222 333 444 555 666 777 888 999

    輸出:

    6
    251
    4995

    代码:

     

     1 #include<iostream>
     2 #include<sstream>
     3 #include<algorithm>
     4 using namespace std;
     5 int main(){
     6     string s;
     7     int T,a;
     8     cin>>T;
     9     getchar();
    10     while(T--){
    11         getline(cin,s);
    12         stringstream ss(s);
    13         int sum=0;
    14         while(1){
    15             ss>>a;
    16             if(ss.fail())break;
    17             sum+=a;
    18         }
    19         cout<<sum<<endl;
    20     }
    21     return 0;
    22 }

     

    以下是对于stringstream和sprintf和sscanf的理解:

     1 /*#include<algorithm>
     2 #include<iostream>
     3 #include<sstream>
     4 using namespace std;
     5 int main(){
     6     string s="carea 89 男";
     7     stringstream ss(s);
     8     string a,b;
     9     int c;
    10         ss>>a>>c>>b;
    11         cout<<s<<endl;
    12         cout<<a<<endl<<c<<endl<<b<<endl;
    13     return 0;
    14 }*/
    15 /*
    16 #include<algorithm>
    17 #include<iostream>
    18 #include<cstdio>
    19 using namespace std;
    20 int main(){
    21     char s[50],ss[50];
    22     int a=154000,b=848;
    23     sprintf(s,"%d plus %d is %d",a,b,a+b);//
    24     cout<<s<<endl;
    25     sscanf(s,"%*s%s",ss);//
    26     puts(ss);
    27     return 0;
    28 }*/

     

  • 相关阅读:
    MySQL 5.5版本数据库介绍与二进制安装
    nginx配置文件的基础优化
    yum源是什么
    微服务之间调用token管理
    微服务之间调用事务处理
    idea
    sentry
    infinispan配置
    微服务事务处理
    高并发处理
  • 原文地址:https://www.cnblogs.com/handsomecui/p/4894525.html
Copyright © 2011-2022 走看看