String字符串问题

作者:袖梨 2022-07-02

C++ PRIMER中的一道题P78习题3.18

 



//从标准输入读入N个String字符串,连接到一起,然后输出,输出后在让程序在没个输入的字符串后加空格。
//缺点只能比较确定个数的字符串的大小,解决办法一:用vector容器(未测试过),在学习完vector容器后从新改写此题
#include<iostream>
#include
<string>
using namespace std;
int main()
{
    
string s,s1;//定义两个string量s存放连接后的字符串,s1存放输入的字符串
    string::size_type a[3];//缺点只能比较确定个数的字符串的大小
    for(int i=0;i!=3;i++)
    
{
        cin
>>s1;
        a[i]
=s1.size();//求出输入的字符串的大小存放在数组里面
        cout<<a[i]<<endl;
        s
+=s1;//合并字符串
    }

    cout
<<s<<endl;
    
int num=0;// 定义一个整形数来做数组的下标,
    for(string::size_type b=0;b!=s.size();b++)
    
{
        
if(b==a[num])

        
{
            num
++;
            cout
<<" ";
        }

        
else if(b==a[num]+a[num-1])

        
{
            num
++;
            cout
<<" ";
        }

        cout
<<s[b];
    }

    
return 0;
}

相关文章

精彩推荐