[C] Operazioni su stringhe

di il
8 risposte

[C] Operazioni su stringhe

Devo fare una function che ha come input una stringa che rappresenta un testo in italiano e restituisce come output il numero di parole che terminano in are contenute nel testo. Nel testo le parole sono separate da un unico spazio.
Allora penso che devo fare una strcmp tra la chiave e il testo però non ho capito come faccio a dire che la chiave si trova alla fine. E poi le parole sono separate da un unico spazio che significa? Devo scrivere solo due parole o devo scrivere tutto attaccato e metto solo uno spazio? Bho non lo so mi aiutate?

8 Risposte

  • Re: [C] Operazioni su stringhe

    Conosci solo la funzione strcmp?
  • Re: [C] Operazioni su stringhe

    No anche strlen, strchr, strcpy, strstr
  • Re: [C] Operazioni su stringhe

    Ecco ... è strstr che ti serve ...
  • Re: [C] Operazioni su stringhe

    Unitamente alla suggerita funzione strstr( ) utilizzerei anche la funzione strtok( )
  • Re: [C] Operazioni su stringhe

    Strtok non l'ho fatta... quindi devo usare strstr e non strcmp giusto?
  • Re: [C] Operazioni su stringhe

    Si, studiala e usala in modo opportuno. Non so se possono esserci virgole o altri segni dopo la parola o solo lo spazio e cosa c'è dopo l'ultima parola... tieni conto di questi casi.
  • Re: [C] Operazioni su stringhe

    Ok quindi non so se ho capito bene dovrei fare una strstr (testo, chiave) cosi mi trova all'interno del testo che poi inserisco la chiave che in questo caso è are. Poi per contare le parole in cui è presente are dovrei usare la strtok?
  • Re: [C] Operazioni su stringhe

    O usi la strstr con opportuno codice ed algoritmo, oppure la strtok. Dato che quest'ultima non l'hai ancora vista, usa la strstr.

    Ma comincia a scrivere e testare del codice altrimenti non parti mai ...
Devi accedere o registrarti per scrivere nel forum
8 risposte