问题标题: 酷町堂:2829 字符串擦除字符

0
0
已解决
武建豪
武建豪
中级天翼
中级天翼

不知道输入带不带空格

字符串查找函数

 功能:在字符串s中查找字符串s2第一次出现的位置,返回第一次出现的下标,如果找不到返回-1(注意必须定义一个整型变量装返回的结果)

 格式:s.find(待查找字符串s2,起始下标);

  找到----返回第一次出现的下标

  找不到----返回-1

string a,b;

a="hello";

b="ll";

int p=a.find(b,0);   //从下标0对用的字符开始查找字符串b

cout<<p;            //输出"ll"在a中第一次输出的位置下标2


 

erase 函数:

删除部分字符串的函数:erase(开始删除的位置,删除的长度)

格式:字符串1.erase(index,len);

功能:删除字符串1中以index下标对应的元素为开始的len个长度的字符。

如:

 

string a;

a="hello";

a.erase(0,2); //删除a中从下标0开始的2个字符

cout<<a<<endl;   //输出为llo,原字符串改变

 

顺带留个思路


0
已采纳
李奕歌
李奕歌
初级天翼
初级天翼
#include<bits/stdc++.h>
using namespace std;
int main(){
    string a;
    char b;
    cin>>a>>b;
    for(int i=a.size()-1;i>=0;i--){
        if(a[i]==b) a.erase(i,1);
    }
    cout<<a;
    return 0;
}

 

0
0
我要回答