#include #include int codigo (int val) { if (val < 10) return val + '0'; else return (val-10) + 'a'; } int n2s (int num, int base, char *buf) { int meu, qtos; if (num >= base) { meu = num % base; qtos = n2s (num/base, base, buf); buf[qtos] = codigo(meu); buf[qtos+1] = 0; /* pode sempre ser o Ășltimo! */ return qtos + 1; } else { *buf = codigo(num); *(buf+1) = 0; /* pode sempre ser o Ășltimo! */ return 1; } } int main (int argc, char **argv) { char buffer[100]; printf ("tamanho = %d, resultado = %s\n", n2s (atoi(argv[1]), atoi(argv[2]), buffer), buffer); return 0; }