miercuri, 27 noiembrie 2013

Despartirea unui text in cuvinte folosind functia STRTOK

  • Se citeste un text de la tastatura sa se afiseze cuvintele textului separat pe cate o linie.
Exemplu:
Text citit: Ana are mere
Se va afisa:
Ana
are
mere
 Rezolvare
#include <iostream>
#include <string.h>
using namespace std;

int main()
{
    char s[100], sep[]=" ,.!?;", *cuv;
    cin.get(s,100);
    cuv=strtok(s,sep); //Functia "gaseste" primul cuvant sa il memoreaza in pointerul cuv.
    while(cuv)
    {

        cout<<cuv<<endl; //Afisarea cuvantului pe ecran.
        cuv=strtok(NULL,sep); //Cautarea urmatorului cuvant in zona tampon si memorarea lui in cuv.
    }

    return 0;
}

Functia STRTOK gaseste cuvintele dintr-un sir folosindu-se de separatorii memorati intr-un sir separat.
Structura: strtok(sir_text,sir_separatori)
!In urma executarii functiei STRTOK sirul care contine textul va deveni identic cu rezultatul functiei, restul sirului initial urmand sa se retina intr-o zona de memorie numita zona tampon (BUFFER). 
Descarca problema - DOWNLOAD .

3 comentarii: