题目描述
连续输入字符串(输出次数为N,字符串长度小于100),请按长度为8拆分每个字符串后输出到新的字符串数组,
长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。
首先输入一个整数,为要输入的字符串个数。
例如:
输入:2
abc
12345789
输出:abc00000
12345678
90000000
解题思路
思路并没有什么新颖之处,关键在于处理结束输入,一开始没有加结束输入条件,怎么也不通过,后来加了while(cin>>n)之后就编译通过了。
#include<iostream>
#include<string>
using namespace std;
int main(){
int n;
while(cin>>n){
cin.get();
for(int q=0;q<n;q++){
string input;
getline(cin,input);
int len=input.size();
if(len==0)return 0;
if(len%8==0){
for(int i=0;i<len;i++){
cout<<input[i];
if((i+1)%8==0){
cout<<endl;
}
}
}
else{
for(int j=0;j<len;j++){
cout<<input[j];
if((j+1)%8==0){
cout<<endl;
}
}
for(int k=0;k<(8-len%8);k++){
cout<<0;
}
cout<<endl;
}
}
}
return 0;
}
【今天也要加油呀】