Utlizzo della libreria string.h

di il
3 risposte

Utlizzo della libreria string.h

Ciao ragazzi,
mi servirebbe una mano con questo esercizio. Qualcuno è in grado di risolverlo?

ES:
scrivere un programma che cerchi la minore e la maggiore tra una serie di parole. Dopo che l'utente avrà immesso le parole, il programma dovrà determinare quali vengono prima e quali vengono dopo secondo l'ordine alfabetico. Il programma dovrà smettere di accettare altro input nel momneto in cui l'utente inserisce una parola di 4 lettere.Assumete che non ci siano parole con più di 4 lettere.
L'esercizio suggerisce l'utilizzo della strcmp per il confronto, l'utilizzo della strcpy e della strlen per determinare la lunghezza della parola.
IL tutto utilizzando delle funzioni.
Mi aiutate per favore??

3 Risposte

  • Re: Utlizzo della libreria string.h

    Sicuramente ma qui non si chiede la soluzione degli esercizi. Devi provarci tu. Magari qualche aiuto dopo viene.
  • Re: Utlizzo della libreria string.h

    So già che è sbagliato il 90%... ecco perchè non volevo metterlo.




    [code#include <stdio.h>
    #include <string.h>
    #define max 20

    int carica(char s[],int n);
    char parola (char s[],int n, char *smallest_word, char *largest_word);

    int main ()
    {
    char *smallest_word, *largest_word, s[max];
    int n;


    printf("inserire il numero di parole: ");
    scanf("%d",&n);
    carica (s, n);
    parola ( s, n, smallest_word, largest_word);

    {
    return 0;



    }

    int carica( char s[], int n)
    {
    int i;
    for(i=0;i<n;i++)
    {
    printf("\nInserisci parola = ",i);
    scanf("%s",&s);
    }
    return 0;
    }


    char parola (char s[],int n, char *smallest_word, char *largest_word);
    {
    smallest_word=&s[0];
    largest_word=&s[0];
    int i;
    for (i=0;i<n;i++)
    {
    if (strcmp(smallest_word,s[i+1])<0);

    (strcpy(smallest_word,s[i+1]));





    else if (strcmp(largest_word,s[i+1])>0);

    (strcpy(largest_word,s[i+1]));



    }
    printf("la parola più corta è : %s",smallest_word);
    printf("la parola più lunga è : %s",largest_word);
    return ;
    }
    ][/code]
  • Re: Utlizzo della libreria string.h

    grazio_patròn ha scritto:



    int main ()
    {
    char *smallest_word, *largest_word, s[max];
    int n;
    ][/code]
    *smallest_word e *largest_word non dovresti allocarle dinamicamente?


    Poi la mia idea sarebbe quella di creare un vettore,dove ogni elemento contiene una stringa.Con un ciclo infinito inserisci
    una alla volta le stringhe nel vettore e puoi usare la funzione strlen per vericare la lunghezza,che in caso di 4,sarà la tua
    condizione di uscita.Questo ti evita di chiedere quante parole inserire all'utente
Devi accedere o registrarti per scrivere nel forum
3 risposte