华为机试 — 字符串分隔

题目描述

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

输入描述:

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

输出描述:

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

示例1

输入

abc
123456789

输出

abc00000
12345678
90000000
#include<iostream>
#include<string>
using namespace std;
int main(){
    string str1, str2;
    cin>>str1>>str2;
    int str1_len = str1.length();
    int str2_len = str2.length();
    while (str1_len > 8){
        cout<<str1.substr(0,8)<<endl;
        str1 = str1.substr(8,str1_len-7);
        str1_len = str1.length();
    }
    if (str1_len > 0){
        cout<<str1;
        for (int j = 0; j < 8-str1_len; j++)
            cout<<"0";
        cout<<endl;
    }
    while (str2_len > 8){
        cout<<str2.substr(0,8)<<endl;
        str2 = str2.substr(8,str2_len-7);
        str2_len = str2.length();
    }
    if (str2_len > 0){
        cout<<str2;
        for (int j = 0; j < 8-str2_len; j++)
            cout<<"0";
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/ChesterWNimitz/article/details/81461785