Informatică, întrebare adresată de mapsxxx, 9 ani în urmă

Se da un sir de caractere format din cuvinte separate prin spatii. Sa se afișeze toate cuvintele din sir care conțin litere aparținând unui cuvânt oarecare introdus de utilizator de la tastatura.

Răspunsuri la întrebare

Răspuns de ated
1
Asta e rezolvarea, daca prin "sa se afișeze toate cuvintele din sir care conțin litere aparținând unui cuvânt" se intelege ca toate literele din cuvantul din sir (variabila p) se gasesc si in cuvantul citit (variabila b), de exemplu "abc" si "abcdef".

#include <iostream>
#include <cstring>

using namespace std;

int main()
{
    char a[100], b[100];
    cin.get(a, 100);
    cin >> b;
    char *p = strtok(a, " ");
    while(p)
    {
        int OK = 1;
        for (int i=0; p[i] && OK; i++)
            if (!strchr(b, p[i]))
                OK = 0;
        if (OK)
            cout << p << " ";
        p = strtok(NULL, " ");
    }
    return 0;
}
Alte întrebări interesante