用flag来区分当前是否在数字串连续的状态
#include<string>
#include<iostream>
using namespace std;
int main(){
string str;
while(getline(cin, str)){
bool flag=0;
string res;
for(int i=0;i<str.size();i++){
if(flag==0){
if(str[i]>'9'||str[i]<'0') { res+=str[i]; }
else if(str[i]<='9'&&str[i]>='0') {
res+='\**';
res+= str[i];
flag=1;
}
}
else if(flag==1){
if(str[i]>'9'||str[i]<'0'){
res+='****';
res+=str[i];
flag=0;
}else if(str[i]<='9'&&str[i]>='0'){
res+= str[i];
}
}
}
if(flag==1) res+='*';
cout<<res<<endl;
}
return 0;
}


京公网安备 11010502036488号