题目描述:
•连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组;
•长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。
输入描述:
连续输入字符串(输入多次,每个字符串长度小于100)
输出描述:
输出到长度为8的新字符串数组
示例:
输入:
abc 123456789
输出:
abc00000 12345678 90000000
解题思路:
每输入一个字符串,先计算其字符个数与8的余数,将前面的x个8字符子串输出,再输出剩下的字符,并补充0的个数。
测试代码:
#include <iostream> #include <string> using namespace std; int main() { string str; int number=0; while(cin>>str) { // left是裁剪后不足8个字符的字符串中字符的个数 int left=str.size()%8; while(str.size()>=8) { cout<<str.substr(0,8)<<endl; str=str.substr(8); } // 如果为0则说明后面没有多余字符了 if(left) { number=8-left; str.append(number,'0'); cout<<str<<endl; } } return 0; }