用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;
}