Algoritm pentru eliminarea unui caracter dintr-un șir (Metoda II)

Se citește de la tastatură un șir de caractere. Să se citească un alt caracter, să se elimine toate aparițiile acelui caracter din șir, iar apoi să se afișeze șirul modificat.

Ca și în cazul programului pentru determinarea numărului de apariții a unui caracter într-un șir, programul de față este o variantă mai profi, care folosește pointeri. Se atribuie pointerului p adresa la care se găsește subșirul care începe cu caracterul căutat, cât  timp nu s-a  ajuns la finalul șirului. Acest lucru este posibil datorită funcției strchr.

Vezi și: Algoritm pentru eliminarea unui caracter dintr-un șir (Metoda I)

#include<iostream>
#include<cstring>
using namespace std;
int main()
{
    char s[100], *p,x;
    cout<<"Care este sirul? "; cin.get(s,99);
    cout<<"Litera? "; cin>>x;
    p=strchr(s,x);
    while (p)
    {
      strcpy(p, p+1);
      p=strchr (p, x);
    }
    cout<<s;
    return 0;
}

De asemenea, ai putea dori...

Lasă un răspuns

Acest sit folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.