Oppure

Loading
06/08/07 23:00
kikko85
Salve io ho pensato

MENU PRINCIPALE:

Inserire una frase;
prende la frase e la memorizza in
una variabile detta frase per esempio.

compare tale menù
fatto con lo switch & case no?

1) TOGLI PAROLA
2) AGGIUNGI PAROLA

Se scrivo 1 va alla funzione TOGLI: data la frase e la parola da cercare all'interno della frase, tale parola viene eliminata ok? Come si fa?

Se scrivo 2 va alla funzione AGGIUNGI: data la frase e la parola da aggiungere viene aggiunta in fondo ok? Basta un semplice strcat alla fine della frase prima con il carattere " " per dare lo spazio blank e poi la parola?
Chi mi può aiutare?
Grazie Cordiali Saluti.
Grazie il menù lo sofare è una cavolata...il resto è :alert::alert:
aaa
07/08/07 7:36
Oligoatria
Per eliminare una parola all'interno di una stringa prima la devi individuare, quindi ti consiglio di scrivere una funzione che restituisce un int indicante la posizione della prima lettera della parola oppure il puntatore ad essa. Questa funzione può essere costituita da un semplice for.
Per togliere la parola devi scegliere tu il metodo più adatto:
- uno può essere il copiare la frase in una nuova stringa tralasciando la parola da escludere;
- più efficiente penso sia il traslare di (-strlen(parola)) le lettere successive alla parola da eliminare(anche questo con un semplice ciclo for).

Spero di essere stato chiaro e non troppo noioso (potevo essere più breve, forse).
aaa
07/08/07 9:00
kikko85
Ecco per esempio per aggiungere 1 parola ad 1 parola io ho provato a fare così:


#include <stdlib.h>
#include <stdio.h>
#include <string.h>

int main() 
{
    char prima_parola[100];
    
    char seconda_parola[100];
    
    char nuova_frase[100];

    printf("Inserisci prima parola:\n\n");
    
    fgets(prima_parola, sizeof(prima_parola), stdin);
    
    /* trim off seconda_parola character */
    
    prima_parola[strlen(prima_parola)-1] = 'Ecco per esempio per aggiungere 1 parola ad 1 parola io ho provato a fare così:



#include <stdlib.h>
#include <stdio.h>
#include <string.h>

int main() 
{
    char prima_parola[100];
    
    char seconda_parola[100];
    
    char nuova_frase[100];

    printf("Inserisci prima parola:\n\n");
    
    fgets(prima_parola, sizeof(prima_parola), stdin);
    
    /* trim off seconda_parola character */
    
    prima_parola[strlen(prima_parola)-1] = '{parsed_message}';

    printf("\n\nInserisci seconda parola:\n\n");
    
    fgets(seconda_parola, sizeof(seconda_parola), stdin);
    
    /* trim off seconda_parola character */
    seconda_parola[strlen(seconda_parola)-1] = '{parsed_message}';

    strcpy(nuova_frase, prima_parola);
    strcat(nuova_frase, " ");
    strcat(nuova_frase, seconda_parola);
    
    printf("\n\nLa nuova frase: %s\n\n\n\n\n\n", nuova_frase);
    
    system("pause");
    
    return (0);
}



ma se voglio aggiungere ad una fraase e non parola stavolta una parola. CIoè:
L'utente scrive la frase:

Chi tace (frase)

e vuole aggiungere "acconsente" (parola)
e divente il proverbio:

:alert: Chi tace acconsente!!!! :alert:

8-| beh coe proverbio di prova non è male.

Grazie
'; printf("\n\nInserisci seconda parola:\n\n"); fgets(seconda_parola, sizeof(seconda_parola), stdin); /* trim off seconda_parola character */ seconda_parola[strlen(seconda_parola)-1] = 'Ecco per esempio per aggiungere 1 parola ad 1 parola io ho provato a fare così:


#include <stdlib.h>
#include <stdio.h>
#include <string.h>

int main() 
{
    char prima_parola[100];
    
    char seconda_parola[100];
    
    char nuova_frase[100];

    printf("Inserisci prima parola:\n\n");
    
    fgets(prima_parola, sizeof(prima_parola), stdin);
    
    /* trim off seconda_parola character */
    
    prima_parola[strlen(prima_parola)-1] = '{parsed_message}';

    printf("\n\nInserisci seconda parola:\n\n");
    
    fgets(seconda_parola, sizeof(seconda_parola), stdin);
    
    /* trim off seconda_parola character */
    seconda_parola[strlen(seconda_parola)-1] = '{parsed_message}';

    strcpy(nuova_frase, prima_parola);
    strcat(nuova_frase, " ");
    strcat(nuova_frase, seconda_parola);
    
    printf("\n\nLa nuova frase: %s\n\n\n\n\n\n", nuova_frase);
    
    system("pause");
    
    return (0);
}



ma se voglio aggiungere ad una fraase e non parola stavolta una parola. CIoè:
L'utente scrive la frase:

Chi tace (frase)

e vuole aggiungere "acconsente" (parola)
e divente il proverbio:

:alert: Chi tace acconsente!!!! :alert:

8-| beh coe proverbio di prova non è male.

Grazie
'; strcpy(nuova_frase, prima_parola); strcat(nuova_frase, " "); strcat(nuova_frase, seconda_parola); printf("\n\nLa nuova frase: %s\n\n\n\n\n\n", nuova_frase); system("pause"); return (0); }


ma se voglio aggiungere ad una fraase e non parola stavolta una parola. CIoè:
L'utente scrive la frase:

Chi tace (frase)

e vuole aggiungere "acconsente" (parola)
e divente il proverbio:

:alert: Chi tace acconsente!!!! :alert:

8-| beh coe proverbio di prova non è male.

Grazie
Ultima modifica effettuata da kikko85 07/08/07 9:03
aaa
07/08/07 9:20
kikko85
Ah ok aho aok!!! Scusate funzionava già meglio così grazie. E per quanto riguarda la funzione togli non l'ho capita. Potreste farmi una funzione o un miniprogramma ?:D Io quello di agigungi l'ho fatta perchè era una cavolata. Ma togli no :-| !
Grazie
aaa