华为机试题-字符串分隔

题目描述

•连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;
•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。


输入描述:

连续输入字符串(输入2次,每个字符串长度小于100)



输出描述:

输出到长度为8的新字符串数组


输入例子:
abc
123456789

输出例子:
abc00000
12345678
90000000


#include <iostream>
#include <string> 
using namespace std; 
int main(){
    string str;
     
    while(getline(cin,str))
{
        while(str.size()>8)
{
            cout << str.substr(0,8) <<endl; //获得字符串str中 从第0位开始的长度为5的字符串//默认时的长度为从开始位置到尾
            str=str.substr(8); //获得从第8个位置开始到最后位置的所有元素重新赋给str
        }
        cout << str.append(8-str.size(),'0') << endl;   //不够8位的补0,第一个参数为要添加字符的个数,第二个为要添加的字符
    }
}

原文地址:https://www.cnblogs.com/simplepaul/p/6724908.html