问题:1125. 删除字符串中间的*
类型:字符串
题目描述:
输入一个字符串,将串前和串后的*保留,而将中间的 * 删除。
输入:
一个含*的字符串。
输出:
删除了串中的*的字符串。
样例:
输入:
***ABC123**123*abc***********
输出:
***ABC123123abc***********
完整代码如下:
#include<bits/stdc++.h>
using namespace std;
int main(){
//一、分析问题
//已知:一个含*的字符串。
//未知:符合条件的字符串。
//关系:删除了串中的*的字符串。
//二、数据定义
string s;
int k=0,m;
//三、数据输入
cin>>s;
m=s.size()-1;
//四、数据计算
while(s[k]=='*'){
cout<<s[k];
++k;
}
while(s[m]=='*'){
--m;
}
for(int i=k;i<m;i++){
if(s[i]!='*'){
cout<<s[i];
}
}
while(m<s.size()){
cout<<s[m];
++m;
}
//五、输出结果
return 0;
}