Preguntas escritas de Huawei: segmentación de cadenas

 

Descripción del título

• Para ingresar cadenas de caracteres continuamente, divida cada cadena de caracteres por la longitud de 8 y envíela a una nueva matriz de cadenas de caracteres
.

Ingrese la descripción:

Ingrese cadenas de caracteres consecutivamente (ingrese dos veces, la longitud de cada cadena de caracteres es menor que 100)

Descripción de salida:

Salida a una nueva serie de cadenas de longitud 8

Ejemplo 1

De entrada

abc 
123456789

Salida

abc00000 
12345678 
90000000
#include <iostream>
#include <string>

using namespace std;

void func1(string s) {
    int len = s.length();
    cout << s;
    if (len < 8) {
        for (int i = 0; i < 8 - len; ++i) {
            cout << '0';
        }
    }
    cout << endl;
}

void func2(string s) {
    int len = s.length();
    int index = len % 8;

    for (int i = 0; i < len - index; ++i) {
        cout << s[i];
        if ((i + 1) % 8 == 0) cout << endl;
    }
    if(index != 0)
        func1(s.substr(len - index, len - 1));
}

int main() {
    string s;
    while (cin >> s) {
        if (s.size() <= 8) func1(s);
        else func2(s);
    }
    return 0;
}

 

Publicado 34 artículos originales · Me gusta 10 · Visitantes más de 10,000

Supongo que te gusta

Origin blog.csdn.net/weixin_41111088/article/details/104771205
Recomendado
Clasificación