Oppure

Loading
28/01/14 19:09
perillitommaso
Ciao a tutti, è da poco che programmo in C, faccio il terzo superiore e quindi non so un gran che.. ma comunque, in laboratorio abbiamo fatto un programma che legge una stringa di caratteri MAX 30 e quindi MAX 29 caratteri, mi scrive di quanti caratteri è composta la stringa che abbiamo inserito in Input e poi me la stampa in modo verticale, un carattere alla volta... questo è il codice:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define MAX 30

int main()
{
    char stringa[MAX];
    int lung;
    int i;

    printf("Come ti chiami? ");
    //scanf("%s", stringa);
    fgets (stringa, MAX, stdin);
    lung = strlen(stringa);
    stringa[lung-1] = 0;
    lung = strlen(stringa);

    printf("%s e' il mio nome preferito\n", stringa);

    printf("Adoro i nomi con %d caratteri\n", lung);

    i=0;
    while (i<lung){
        printf("%c\n", stringa[i]);
        i=i+1;
    }

    system("PAUSE");
}

Il mio problema è quello di stampare la stringa di caratteri avuta in Input sempre in modo verticale ma invertendo le posizioni dei caratteri, esempio: roma --> amor
Grazie per il vostro aiuto
aaa
28/01/14 19:17
dmr
Al posto di partire da i=0, parti da i=strlen(stringa)-1 e decrementi i mentre i>=0.
aaa
28/01/14 19:35
perillitommaso
Postato originariamente da dmr:

Al posto di partire da i=0, parti da i=strlen(stringa)-1 e decrementi i mentre i>=0.

Grazie molte, problema risolto :)
aaa