Buongiorno a tutti!
L'esercizio dice:
-prendere in input una riga di testo;
-suddividerla in token con la funzione strtok;
-inviarla in output in ordine inverso.
Il mio programma è questo:
codice:/* Scrivere una frase, dividerla in soket e stamparli in ordine inverso */ #include <stdio.h> #include <stdlib.h> #include <string.h> void reverse( char *sentence ); main() { char s[100]; printf("Inserisci una frase:\n"); gets(s); printf("La frase stampata con i token in ordine inverso e' :\n"); reverse(s); putchar('\n'); system("pause"); } void reverse( char *sentence ) { char *tokenPtr; char v[100]; int i; tokenPtr = strtok(sentence, " "); sprintf(v, "%s", tokenPtr); while ( tokenPtr != NULL ) { tokenPtr = strtok(NULL, " "); sprintf(v, "%s", tokenPtr); } i = strlen(v); while ( i != 0 ) { printf("%c", v[i] ); i--; } }
La finestra dell'output mi da, dopo aver inserito la frase:
)llun
...naturalmente è sbagliato... Qualcuno di voi mi può aiutare?? Grazie!!

Rispondi quotando