Ciao,
stò impazzendo con l'esame di laboratorio di programmazione...un esercizio è scrivere una propria versione di itoa....questo è il delirio di soluzione messa online dalla proff...che ovviamente non funziona....potete darmi una mano?!?! non capisco proprio la logica dietro all'itoa()....

codice:
#include <stdio.h>
#include <string.h>
main()
(
       int err=O, n=13;
       char s[20];
       int itoa(int n,char s[]);
       err = itoa(n,s);
       s[20]=' ';
               \0
       printf ("n=%d, s=%s\n",n,s);
}

itoa(n,s)
char s[];
int n;
{
        int i, segno;
        if((segno = n) < 0) /* controllo segno */
                  n= -n; /* rende n positivo */
        i = 0;
        do
        {
                  /* genera le cifre in ordine inverso */
                  s[i++] = n % 10 + '0'; /* prende la cifra succ.*/
        }while(( n/= 10) > 0); /* la toglie */
        if (segno < 0)
                  s[i++] = ' ;
                            -'
        s[i]= ' ';
                \0
        reverse(s);
        return (0);
}

reverse(s) /*inverte la stringa s sul posto */
char s[];
{
        int c, i, j ;
        for (i = 0, j = strlen(s)-1, i < j; i++, j--)
        {
                  c=s[il;
                  s[i]=s[j] ;
                  s[j]=c;
        }
}
Grazie
Andrea